Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Button Ereignis geben (https://www.delphipraxis.net/8889-button-ereignis-geben.html)

HollowMan_COS 14. Sep 2003 18:51


Button Ereignis geben
 
Liste der Anhänge anzeigen (Anzahl: 1)
:?:
Hallo,

brauche dringend Hilfe.

Habe eine normale String-Grid-Komponente in mein Projekt integriert. In dieser Grid werden zur Laufzeit Buttons in bestimmten Zellen erstellt. Diesen Buttons soll ein OnClick-Ereignis zugeordnet werden.

Habe es schon folgendermaßen versucht, leider ohne Glück:

Delphi-Quellcode:
btnEdit:=TBitBtn.Create(Self.Grid);
btnEdit.Parent:=Self.Grid;
btnEdit.OnClick:=btnEditClick;
btnEdit.BoundsRect:=Self.Grid.CellRect(8, Self.Grid.RowCount - 1);
btnEdit.Name:='btnEdit' + IntToStr(Self.Grid.RowCount - 1);
btnEdit.Caption:='Bearbeiten';
Bei dem btnEditClick handelt es sich um ein TNotifyEvent, das ich folgendermaßen initialisiert habe:

Delphi-Quellcode:
 
btnEditClick:=GridButtonsEditClick;
Bei GridButtonsEditClick handelt es sich um eine Prozedur.

Kann mir jemand sagen, wie ich dem Button ein bestimmtes Ereignis zuweisen kann?

Hoffe mir kann jemand helfen.

PS: Als Anlage habe ich ein Bild hinzugefügt, wie der Spass aussieht.

Danke schon im vorraus.

Phoenix 14. Sep 2003 19:00

Re: Button Ereignis geben
 
Hi HollowMan,

erstmal herzlich Willkommen in der Delphi-PRAXiS ;-)

Das sieht schonmal richtig gut. Wegen dem Zuweisen der Methode:

Du erzeugst einen BitButton. Guck mal, wie der Methodenaufruf aussieht, wenn Du den Button auf ein Form ziehst. Die Parameterliste die dann dort erzeugt wird muss mit der Methode, die du dem dynamischen Button später zuweisen willst ja identisch sein.

Du erstellst also einfach eine Methode mit exakt diesen Paramateren (hab leider an dem Rechner hier kein Delphi, sonst könnt ich Dir ein Beispiel geben), und weise dem OnClick - Ereignis einfach diese Methode zu. Der Trick ist wirklich nur die Parameterliste.

Christian Seehase 14. Sep 2003 19:02

Re: Button Ereignis geben
 
Moin HollowMan,

erst einmal herzlich willkommen hier in der Delphi-PRAXiS.

Das Problem hatten wir gerade erst.
Der "Trick" besteht darin das StringGrid auf ein Panel zu legen, und dann als Parent für die Button das Panel anzugeben. Dann funktioniert's, ganz normal, wie bei jeder dynamisch erzeugten Kompo.

Luckie 15. Sep 2003 02:26

Re: Button Ereignis geben
 
Geschlossen wegen: http://www.delphi-forum.de/viewtopic.php?p=95373#95373

Ich habe eine ausführliche Begründung im DF gepostet.


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:30 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz