SpeedButton während der Laufzeit erstellen



  • Hallo,

    ich möchte gerne SpeedButton während der Laufzeit erstelle.

    mit

    DynamicArray<TButton*> testBtns;
    testBtns.Length++;
    testBtns[ButtonCount] = new TButton(Handle);
    

    habe ich wunderbar Button erstellt.

    Stelle ich den Code nach SpeedButton um, will er das Handle nicht.

    DynamicArray<TSpeedButton*> NewSpeedButton;
    NewSpeedButton.Length++;
    NewSpeedButton[SpeedButtonCount] = new TSpeedButton(Handle);
    

    weiß mal wieder nicht weiter.

    Gruß Siegfried
    😞



  • BCB-Hilfe schrieb:

    TButton:
    __fastcall virtual TButton(Classes::TComponent* AOwner);

    __fastcall TButton(HWND ParentWindow) : Stdctrls::TButtonControl(ParentWindow) { }

    TSpeedButton:
    __fastcall virtual TSpeedButton(Classes::TComponent AOwner*);



  • Hallo,

    weiß leider nicht, wie ich dieses einsetzen soll ?

    Gruß Siegfried

    😞



  • An den Konstruktur mußt du kein Handle übergeben, sondern einen Zeiger auf die Klasse, die diesen wieder freigeben soll.
    Wenn du das selber übernehmen willst, kannst du auch einfach eine 0 übergeben, dann hast Du allerdings dafür Sorge zu tragen, das der angelegte Button wieder freigegeben wird.
    Ach ja: Und vergiß nicht, als Parent die Form zu übergeben, in der deine SpeedButton dargestellt werden sollen.
    😉



  • Hallo,

    Verstehe dieses noch nicht. Kann man etwas Hilfe bekommen ?
    Wo finde ich im Internet Infos darüber ?
    Gibt es Literatur darüber ?

    Gruß Siegfried

    😞



  • überlege dir mal, welche parameter du bei den beiden Funktionen übergibst. Beschreibung dazu findest du in der bcb-hilfe



  • Hallo,

    danke für die Info's

    Gruß Siegfried


Anmelden zum Antworten