Objekt->EditFeld->Ation = Objekt->Methode



  • Ich habe folgendes (vereinfacht):

    class CMyClass{
      private:    
        TEdit  * pTEdit;   // Datenfeld für Feldinhalte
      public:
        void m_myTEditChange(void);
    
        CMyClass(TForm *pTForm1);
        CMyClass();
        ~CMyClass();
    };
    
    CMyClass::CMyClass(TForm *pTForm1){
    
        pTEdit         = new TEdit (this);
        pTEdit->Name   = "myTEdit";
        pTEdit->Left   = 100;
        pTEdit->Top    = 100;
        pTEdit->Text   = "Hallo Welt";
        pTEdit->Parent = pTForm1;
    
    };
    
    void CMyClass::m_myTEditChange(void){
    //Mache irgendwas
    };
    

    Jetzt möchte ich dem Objekt auf das der pointer pTEdit zeigt die Methode m_myTEditChange() onChange zuweisen.
    Aber irgendwie bekomme ich das nicht hin, was gibt es da besonderes zu beachten ?

    Danke im Voraus



  • Hallo

    das gehört ins C++ Builder Forum.
    TEdit->OnChange ist ein TNotifyEvent und damit muß die Funktion so definiert sein :

    void __fastcall CMyClass::m_myTEditChange(TObject *Sender)
    {
      }
    

    dann kannst du die Funktion zuweisen :

    pTEdit->OnChange = m_myTEditChange;
    

    /Edit : es muß übrigens

    pTEdit         = new TEdit (pTForm1);
    

    heißen

    bis bald
    akari



  • Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Borland C++ Builder (VCL/CLX) verschoben.

    Im Zweifelsfall bitte auch folgende Hinweise beachten:
    C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?

    Dieses Posting wurde automatisch erzeugt.


Anmelden zum Antworten