Sendernamen durch OnClick-Prozedur identifizieren zum 2.



  • Hallo,
    der FAQ-Eintrag vom Happy Builder ist aufschlussreich.
    Moechte ihn jedoch fuer meine Beduerfnisse erweitern und
    braeucht nen Denkanstoss.
    Also ich zaubere zur Laufzeit ein Array von 12 Images aus
    dem Hut. Wenn ich aufs x´te klicke passiert das und das.
    Stelle mir das in Ableitung so vor:

    dynamic_cast<TImage*>(Sender)->Name[Index]
    

    Frage: Geht das? Kann es erst abends ausprobieren, die Frage
    laesst mir nun aber keine Ruh 🙄
    Danke im Voraus



  • Ich würde es mal so probieren
    [code]
    TImage *Anzahl = dynamic_cast <TImage*> (Sender);
    int Nummer = StrToInt(Anzahl->Name);



  • Was genau möchtest du erreichen? Wenn du nur den Namen ermitteln willst genügt deine Anweisung nur ohne Index und eckige Klammern. Natürlich vorher noch auf NULL überprüfen. 😉



  • @maam
    Wenn ich es so probier schreit er folgende Fehlermeldung raus:
    * ist kein gueltiger Integerwert ?!?
    Hm ob damit das Nuemmerchen gemeint ist 😉

    @Dasd
    Wenn ich es mache wie du sagst passiert gar nuescht 😕

    AnsiString test;
    test=dynamic_cast<TImage*>(Sender)->Name;
    Label2->Caption=test;
    

    Keine Fehlermeldung, aber eben auch kein Ergebnis.
    Glaube ich habe da etwas grundlegendes nicht verstanden.
    Werde mich nochmals mit dem "Kaiser" zurueckziehen.
    Trotzdem Danke!
    👍



  • @tanne
    Oh sorry, habe wohl in der Eile den Typ verwechselt.
    Es muss natürlich heißen:

    TImage *Anzahl = dynamic_cast <TImage*> (Sender); 
    String Nummer = Anzahl->Name;
    

    Du musst aber beachten, dass du deinem TImage vorher auch einen Namen zuweist.
    Image[i1]->Name = "Hallo";

    Dann müsste es eigentlich auch mit der anderen Variante gehen.

    Label1->Caption = dynamic_cast <TImage*> (Sender)->Name;
    


  • Nicht vergessen zunächst noch den Zeiger auf NULL zu prüfen! Gerade bei solchen generischen Click-Prozeduren...

    -junix



  • @maam
    Ja natuerlich, so wirds funktionieren 😋
    Dann wird das andere natuerlich auch gehen, lese so die Eigenschaft Tag aus, die ich vorher vergebe, nur wo kein Name vergeben....... oh man selten daemlich!

    @Dasd
    Nehme alles zurueck, s.o.

    @junix
    Werde deinen Tip beherzigen!

    Also ich bin begeistert, der BBuilder, der Kaiser und diese Seite sind ne Klasse Kombination. Werde mich jetzt in Vorfreude auf heut Abend wieder der Arbeit widmen.

    Danke euch 🙂


Anmelden zum Antworten