Delphi-PRAXiS
Seite 1 von 3  1 23      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Button ermitteln (https://www.delphipraxis.net/113974-button-ermitteln.html)

MaxMara 17. Mai 2008 16:14


Button ermitteln
 
Hallo Gemeinde,
ich möchte nach dem einer von mehreren Button (Speedbutton) geklickt wird ein anderes Form anzeigen.
Wie kann ich in dem neuen Form erkennen durch click auf welchen der Speedbuttons das Form geöffnet wurde?

Danke und Grüße
Christian

mkinzler 17. Mai 2008 16:15

Re: Button ermitteln
 
Werte den Sender aus

MaxMara 17. Mai 2008 16:19

Re: Button ermitteln
 
Habe ich versucht...mehrmals.
mit
Delphi-Quellcode:
if TSpeedButton(Sender).Name = 'BHTML' then
hab ich die Versuche nun aufgegeben und mein Posting hier verfasst.

mkinzler 17. Mai 2008 16:20

Re: Button ermitteln
 
Zeig mal etwas mehr von deinem Code

Die Muhkuh 17. Mai 2008 16:21

Re: Button ermitteln
 
Ansonsten über die Tag-Eigenschaft.

Bernhard Geyer 17. Mai 2008 16:21

Re: Button ermitteln
 
Jedem Speedbutton kannst du doch ein OnClick-Ereignis zuordnen? Wo liegt das Problem?

Ansonsten:

Delphi-Quellcode:
if Sender = Speedbuttonxyz then
 ...

MaxMara 17. Mai 2008 16:25

Re: Button ermitteln
 
Delphi-Quellcode:
procedure TFHTML.FormShow(Sender: TObject);
begin
  if TSpeedButton(Sender).Name = 'BHTML' then
    Label1.Caption := 'HTML bearbeiten';
end;
Das ist eigentlich der ganze Code...

Der Speedbutton 'BHTML' öffnet das Form über
Delphi-Quellcode:
FHTML.ShowModal;

Zitat:

Zitat von Die Muhkuh
Ansonsten über die Tag-Eigenschaft.

Die sagt mir leider nicht viel. Wie würde das in etwa aussehen?


Zitat:

Zitat von Bernhard Geyer
Jedem Speedbutton kannst du doch ein OnClick-Ereignis zuordnen? Wo liegt das Problem?

Ansonsten:

Delphi-Quellcode:
if Sender = Speedbuttonxyz then
 ...

das OnClick vom Speedbutton öffnet das Form.

mkinzler 17. Mai 2008 16:30

Re: Button ermitteln
 
Das ist ja der falsche Sender:

Delphi-Quellcode:
FHTML.Tag := Sender.Tag;
FHTML.ShowModal;
...
if Self.Tag = ...

Bernhard Geyer 17. Mai 2008 16:34

Re: Button ermitteln
 
Ah, verständlicher.

Ergänze dein TFHTML-Formular um ein Property "EditMode" welche z.B. per Aufzählungstyp die Anzeigemodi des Formulars beinhalten. Im OnClick-Ereignis des Speedbutton setzt du dieses Property. Damit ist auch die Formularabhängigkeit aufgelöst (was ist wenn du versehentlich den Button von "BHTM" nach "btnHTML" änderst das du jetzt dieses Benennungsschema verwendest?)

MaxMara 17. Mai 2008 16:36

Re: Button ermitteln
 
Zitat:

Zitat von mkinzler
Das ist ja der falsche Sender:

Delphi-Quellcode:
FHTML.Tag := Sender.Tag;
FHTML.ShowModal;
...
if Self.Tag = ...

Das versteh ich jetzt nicht ganz.
Delphi-Quellcode:
FHTML.Tag := Sender.Tag;
habe ich jetzt ins onClick-Ereignis des Speedbuttons hinzugefügt.

Das "if Self.Tag..." habe ich jetzt versucht ins FormShow reingegeben, aber was muss auf der rechten Seite vom '=' stehen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:51 Uhr.
Seite 1 von 3  1 23      

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