![]() |
Buttons
hey hab eine frage.
in meiner fiktiven frage idee habe ich 2 buttons. kann man das machen, dass der button1, nachdem button gedrückt wurde, was andere macht als wenn button2 nicht vorher gedrückt wurde ? also meine Buton1 => Variable a + varibale b Button2 => Edit1.text := 'ballalala' Button1 löst jetzt die aktion 'reset' aus wisst ihr was ich mein ? geht das ? lg |
Re: Buttons
Äh ja das sollte gehen, wenn ich es richtig verstanden habe.
Variable definieren auf die beide Button_Click Events Zugriff haben Pseudocode:
Code:
var
Button2gedrueckt : Boolean = false; procedure Button1_Click(); if Button2gedrueckt then rechne a + b; else reset; Button2gedrueckt := false; end; procedure Button2_click(); Button2gedrueckt := true; end; |
Re: Buttons
Das OnClick Event (wie alle Events) ist nichts weiter als ein Methodenzeiger. Du kannst aus dem Quelltext heraus durchaus Events neue Methoden zuweisen. Das heisst du hättest dann 2 Methoden für Button1, von der eine standardmäßig via OI verknurpselt ist. Bei Click auf Button2 klemmst du die 2. Methode an: "Button1.OnClick = Methode2;". Diese Methoden müssen lediglich die passende Signatur zum Event haben, in diesem Fall
![]() |
Re: Buttons
Oder durch Setzen von Button2.Tag, welchen du dann in dessen Click-Event auswerten kannst
|
DP-Maintenance
Dieses Thema wurde von "mkinzler" von "Sonstige Fragen zu Delphi" nach "VCL / WinForms / Controls" verschoben.
Eine Frage zur VCL |
Re: Buttons
vll gehts auch über die caption
zB button2 wird geklickt => edit1.text:= 'deintext'; => button1.caption:= 'reset'; und dann beim button1-klick mit
Delphi-Quellcode:
if caption = 'reset' then ....
|
Re: Buttons
Würde auch gehen, aber .Tag ist da imo besser geeignet
|
Re: Buttons
hey, vielen dank für eure hilfe, könnt ihr mir aber einen link geben, oder kurz erklären was das mit den Button.Tag ist ? weil ich habe selbst mit google nichts vernünftiges gefunden .. und verstehe nicht so recht was das ist ...
lg ^^ danke schonmal ^^ |
Re: Buttons
.Tag ist eine Integer-Eigenschaft einer Komponente, die man frei verwenden kannst. Du kannst also bei Anklickaken von Button2 den Wert von Button1.Tag von 0 (Standard) auf etwas anderes ändern und dann im onClick diese Eigenschaft auswerten
Delphi-Quellcode:
if (Sender as TButton).Tag = 0 //Button2 wurde nicht geklickt
begin ... end else //Button2 wurde vorher geklickt begin ... end; |
Re: Buttons
cool danke
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 15:06 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