Buttons <edit>zur Laufzeit identifizieren</edit>



  • Hallo.
    Ich hab auf meiner Form fünf Buttons. Da alle fast das gleiche machen, möchte ich eine Funktion schreiben, die beim klicken auf einen beliebigen Button aufgerufen wird.
    Jetzt ist mein Problem, dass ich nicht weiß welcher Button die Funktion aufgerufen hat! Ich hab schon mit dem Sender herumgespielt, bin aber nicht wirklich weit gekommen. Vll kann mir jm sagen was ich tun kann.
    Gruß KY

    Edit:
    Bitte aussagekräftige Überschriften wählen. Danke!



  • Hallo

    Siehe FAQ hier im BCB-Forum, Abschnitt Komponenten benutzen.

    bis bald
    akari



  • aaaahhhh....
    hab ich wohl nicht gründlich gesucht!
    hier stehts!



  • Hallo

    wobei ich aber in deinem Fall, wo du ja den Sendernamen gar nicht wissen willst, lieber auf die Tag-Eigenschaft zurückgreifen.
    Dazu must du erstmal zur Entwurfszeit den jeweiligen Button in deren Eigenschaft Tag eine eindeutige Zahl schreiben, die dem Button dan identifizieren kann (Bei Button1 also 1...).
    Dann kannst du die Tag so in der Button-Eventmethode abfragen

    TButton* button = dynamic_cast<TButton*>(Sender);
    if (button)
    {
      TueWasFürButtonMitTag(button->Tag);
    }
    

    bis bald
    akari


Anmelden zum Antworten