Eigenes Event schreiben



  • Ich habe hier schon nach "Eventhandler" usw gesucht, aber nichts passendes gefunden. Habe auchh nichts in meiner c++ Lektüre gefunden.

    Ich habe eine Klasse bzw ein eigenes Steuerelement gebastelt, ähnlich dem TreeView der Klassenname "CMyTreeView".
    Von meiner Unit1 aus kann ich den CMyTreeView mit addNodes füllen. Ich kann die Größe des eigenen Steuerelements mit Width und Height anpassen, halt alles was man so mit Steuerelementen machen kann.

    Aber?
    Wie kann ich in meiner Klasse die Eventhandler delarieren, um sie von meiner Unit1 aus zu eklarieren und derfinieren?

    Ich möchte von meiner Unit1 aus etwa sowas wie

    CMyTreeView *MyTree1;
    void __fastcall MyTree1Click(TObject *Sender);
    

    erstellen können.

    Ich könnte einen Vorschlag gebrauchen, wonach ich suchen soll.



  • Wie wäre es mit der FAQ?

    "Komponenten entwickeln - Ereignisbehandlungsroutinen erstellen" klingt eigentlich genau nach dem was du brauchst...



  • Dank für die Antwort.

    So in der Art habe ich das schon versucht.

    Das blöde ist bloß, das mein Steuerelement unabhängig von der VCL laufen soll,
    und dann "__published: " nicht funktioniert
    Und
    "__property HMouseKeyEvent MyClick= {read=FMyClick, write=FMyClick};"
    muß als "__published" deklariert werden.



  • "__property" benötigst du doch nur, wenn du die Eigenschaft über den Objektinspektor zugänglich machen willst. Ansonsten kannst du sie auch ganz normal in den public-Teil deiner Klasse setzen.



  • Hallo

    Das blöde ist bloß, das mein Steuerelement unabhängig von der VCL laufen soll,

    Wenn du damit meinst, das du das auch auf anderen Kompilern laufen lassen willst, mußt du auf Events mit __closure verzichten. Dann kannst du nur Funktionspointer benutzen, die nicht so einfach auf Klassenmember zeigen können. Siehe C++ Forum.

    bis bald
    akari


Anmelden zum Antworten