Delphi-PRAXiS
Seite 2 von 3     12 3      

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 Überprüfen ob Button gedrückt wurde? (https://www.delphipraxis.net/101278-ueberpruefen-ob-button-gedrueckt-wurde.html)

Jack23 10. Okt 2007 18:46

Re: Überprüfen ob Button gedrückt wurde?
 
Also ist das genau der Code von Sharky?

Wie mache ich das dann mit IF?

Delphi-Quellcode:
if TButton.Caption = 'test' then

mkinzler 10. Okt 2007 18:48

Re: Überprüfen ob Button gedrückt wurde?
 
Zitat:

Zitat von Jack23
Also ist das genau der Code von Sharky?

Ja.

Zitat:

Wie mache ich das dann mit IF?
Delphi-Quellcode:
if (Sender as TButton).Caption = 'test' then

DeddyH 10. Okt 2007 18:51

Re: Überprüfen ob Button gedrückt wurde?
 
Delphi-Quellcode:
Query.SQL.Text := 'SELECT * FROM abc WHERE test like :caption ORDER BY test asc';
Query.ParamByName('caption').AsString := (Sender as TButton).Caption + '%';

Sharky 10. Okt 2007 18:54

Re: Überprüfen ob Button gedrückt wurde?
 
Hai Jack23,
Zitat:

Zitat von Jack23
...
Delphi-Quellcode:
if TButton.Caption = 'test' then

ich würde versuchen die "Entscheidung" nicht von der Caption abhängig zumachen. Du kannst jedem Button einen eindeutigen Wert in der Eigenschaft Tag zuweisen und dann diese auswerten.

Delphi-Quellcode:
procedure TDemo_Form.FormCreate(Sender: TObject);
begin
  Button1.Tag := 1;
  Button2.Tag := 2;
  Button3.Tag := 3;
end;

procedure TDemo_Form.AllButtonOnClick(Sender: TObject);
var
  btn_Tag : Integer;
  btn_Caption : String;
begin
  btn_Tag := (Sender as TButton).Tag;
  btn_Caption := (Sender as TButton).Caption;
  case btn_Tag of
    1 : Mache das;
    2 : oder das;
    3 : oder das;
  end;
end;

Jack23 10. Okt 2007 19:00

Re: Überprüfen ob Button gedrückt wurde?
 
Ok danke euch schon mal. Nur noch eine Frage ich mache das ja in der einen procedur. Nun möchte ich das aber einer anderen nutzen. Gibt es da eine Möglichkeit?

Also die IF Abfrage möchte ich in einer anderen nutzen. Aber mit dem Wert.

@ Deddy

Ich bnutze eine ADOQuery. Das gibt es doch kein ParamByName oder?


Noch mal edit:

Ich muss das in einer (Column: TColumn) procedure nutzen. Gibt es da unterschiede?

mkinzler 10. Okt 2007 19:02

Re: Überprüfen ob Button gedrückt wurde?
 
Den Tag kannst du natürlich auch im OI setzen.

Sharky 10. Okt 2007 19:02

Re: Überprüfen ob Button gedrückt wurde?
 
Zitat:

Zitat von Jack23
...Also die IF Abfrage möchte ich in einer anderen nutzen....

Dann übergebe deiner Procedure den Wert doch einfach als Parameter.

DeddyH 10. Okt 2007 19:04

Re: Überprüfen ob Button gedrückt wurde?
 
Diese ADOQueries machen mich noch wahnsinnig ;). Da mach es lieber so:
Delphi-Quellcode:
Query.SQL.Text := 'SELECT * FROM abc WHERE test like ' + QuotedStr((Sender as TButton).Caption + '%') + ' ORDER BY test asc';

mkinzler 10. Okt 2007 19:07

Re: Überprüfen ob Button gedrückt wurde?
 
Oder noch besser mit (SQL-)Parametern:
SQL-Code:
Query.SQL.Text := 'SELECT * FROM abc WHERE test like :wert ORDER BY test asc';
...
Query.Parameters.ParamByName('wert').Value := (Sender as TButton).Caption + '%';
[Edit: Überflüssigen Apostroph entfernt. Danke Deddy]

DeddyH 10. Okt 2007 19:11

Re: Überprüfen ob Button gedrückt wurde?
 
Bei ADOQueries wird einfach der Value gesetzt (keine Castereien mit AsString)? Hab mich da letztens mit rumgeschlagen und bin dann aus Verzweiflung wieder zum QuotedStr zurückgekehrt.

P.S.: Du hast ein Apostroph zu viel drin ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:42 Uhr.
Seite 2 von 3     12 3      

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