Überschreiben von Ereignisroutinen



  • Hallo!

    Ich möchte mit einer übergeordneten Komponente bereits in einem Formular vorhandene Komponenten neu zeichnen lassen und somit ihr Aussehen verändern lassen.

    in Delphi habe ich sowas schon gefunden. Es sieht für eine ToolBar folgendermaßen aus:

    TToolBar(Comp).OnCustomDrawButton := ToolBarDrawButton;
    
    procedure ToolBarDrawButton(Sender:TToolBar; Button:TToolButton; State:TCustomDrawState; DefaultDraw: Boolean);
    

    Ich habe versucht, das Ganze in C++ zu übersetzen, jedoch bekomme ich die Fehlermeldung, daß die Konvertierung von ToolBarDrawButton nicht funktioniert.
    Mein Code sieht folgendermaßen aus:

    TToolBar->onCustomDrawButton = ToolBarDrawButton;
    
    void __fastcall ToolBarDrawButton(TToolBar *Sender; TToolButton *Button, TCustonDrawState *State, bool DefaultDraw)
    {
     //hier kommt die neue Zeichenroutine;
    }
    

    Habe auch schon in den FAQ nach den Ereignisbehandlungsroutinen nachgesehen, jedoch hat mir das wenig geholfen.
    Vielleicht kann mir ja jemand von Euch weiterhelfen und mir sagen, was ich falsch mache.

    Gruß



  • Hallo

    die Funktion muß laut BCB-Hilfe zu dem Event so aussehen :

    void __fastcall ToolBarDrawButton(TToolBar* Sender, TToolButton* Button, TCustomDrawState State, bool &DefaultDraw)
    {
      }
    

    bis bald
    akari


Anmelden zum Antworten