![]() |
Mit Button anderen Button auslösen
Hi, wollt mal fragen ob dieses geht, denn das hab ich bisher noch nciht wirklich wo gesehen...
form1.button1 saul etwas ausführen.... der benutzer sieht aber nur form2.button und wenn er diesen klickt soll der form1.button1 ausgeführt werden... also form2.button drücken und soll form1.button ausführen bzw. ansprechen |
Re: Mit Button anderen Button auslösen
Delphi-Quellcode:
Form1.Button1Click(self);
|
Re: Mit Button anderen Button auslösen
danke ;)
|
Re: Mit Button anderen Button auslösen
Hi,
allerdings halte ich
Delphi-Quellcode:
für wesentlich sinnvoller, denn es ist ja nicht garantiert, dass das OnClick-Ereignis auch wirklich Button1Click heißt... ;)
Button1.Click
|
Re: Mit Button anderen Button auslösen
Hallo EvilDragon,
der Vorschlag von Pseudemys Nelsoni funktioniert - keine Frage - Ich halte diese Art jedoch für nicht so geschickt. Das hängt damit zusammen, dass ich ein grundsätzlicher Gegner von Programmlogik innerhalb eines Eventhandlers bin. Ich bemühe mich grundsätzlich nur Methoden innerhalb eines Eventhandlers aufzufrufen. Damit hätte sich Deine Frage etwa so gestellt: Wie kann ich eine Methode von Form1 in Form2 aufrufen. Durch Programmlogik innerhalb eines Eventhandlers wird evt. dein Programm abhänigig vom GUI-Design. Das sollte auf jedenfall vermieden werden. Beispiel: Wenn Du Daten in einer Stringliste verwaltest und dafür eine TListbox nimmst. Jetzt arbeiten an mehreren Stellen Algorithmen mit der Stirngliste (aus der Listbox). Alles kein Problem. Bis irgend jemand kommt und sagt: Die Listbox ist aber öde. Ich möchte einen TreeView o. Listview. Schon ist Dein Problem da. Wenn Du die Stingliste in einem TStringList verwaltet hättest und die TListbox nur zur Anzeige verwendet hättest könntest Du sagen: Kein Problem.
Delphi-Quellcode:
Frage: Wer ist dann innerhalb des Eventhandlers der Sender ?
Form1.Button1Click(self);
|
Re: Mit Button anderen Button auslösen
So kann man auch den Sender des Events mitgeben:
Delphi-Quellcode:
Sender ist der Sender des aktuellen Events
Form1.Button1Click(sender);
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:48 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz