Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Mehrere Ereignisse (https://www.delphipraxis.net/103767-mehrere-ereignisse.html)

f4k3 21. Nov 2007 14:31


Mehrere Ereignisse
 
Seid gegrüßt liebe DP'ler ;),

hab folgendes Problem ... hab n Event-Handler für 10 Buttons innerhalb der Form1.pas erstellt ...

ist zwar nicht von belang aber ich post den Event-Handler mal rein ...

Delphi-Quellcode:
procedure TForm1.ZeiButtonClick(Sender: TObject);  // zeichenweise Zahleneingabe

var zei: Char;

begin

    if Sender = Button10  then zei := '0';
    if Sender = Button1   then zei := '1';
    if Sender = Button2   then zei := '2';
    if Sender = Button3   then zei := '3';
    if Sender = Button4   then zei := '4';
    if Sender = Button5   then zei := '5';
    if Sender = Button6   then zei := '6';
    if Sender = Button7   then zei := '7';
    if Sender = Button8   then zei := '8';
    if Sender = Button9   then zei := '9';
    if Sender = Button11  then zei := '.';


    if mode = 1 then
    begin
                strBuff1 := strBuff1 + zei;
          Label1.Caption := strBuff1;
    end

    else
    begin

          strBuff2 := strBuff2 + zei;
          Label1.Caption := strBuff1 + ' ' + op + ' ' + strBuff2;

    end;

end;
So ... etz bräucht ich n zweites On-klick-Event-Handler innerhalb der Form1.pas ...

Wenn ich nun im OnKlick-Event der Form ... das aktuelle Event-Handler ZeiButtonClick überschreibe, um ein neuen Event-Handler namen zu vergeben
wechselt er mir nur den Namen meines ZeiButtonClick, anstatt mir n neuen Rahmencode für einen neuen Event-Handler zu liefern ...

Muss ich da irgendwie n umweg gehen damit des funktioniert? oder bin ich einfach nur zu doof? :P :D

Vielen Dank für eure PostZ

Euer f4k3

Jelly 21. Nov 2007 14:53

Re: Mehrere Ereignisse
 
Zitat:

Zitat von f4k3
Wenn ich nun im OnKlick-Event der Form ... das aktuelle Event-Handler ZeiButtonClick überschreibe, um ein neuen Event-Handler namen zu vergeben

:wiejetzt: Ich versteh nicht, was du zu erklären versuchst

LoCrux 21. Nov 2007 14:55

Re: Mehrere Ereignisse
 
Nee nicht doof... :lol:

Tipp: schau mal in Deiner OH nach TNotifyEvent bzw. suche/google nach den funktionalen/proceduralen Typen/Variablen in Delphi. Dann sehen wir mal weiter...

f4k3 21. Nov 2007 14:59

Re: Mehrere Ereignisse
 
Liste der Anhänge anzeigen (Anzahl: 1)
Kuckt euch des Pic unten an ...

Also ich hab bereits ein On-Klick-Event auf meiner Form1.pas
ich möchte aber ein weiteres On-Klick-Event auf meiner Form1.pas, das dann ein Event-Handler für andere Buttons ist.

Verständlich? :P

Neotracer64 21. Nov 2007 15:05

Re: Mehrere Ereignisse
 
Kannst du nicht ein unabhängiges Event erstellen? Muss es ein Event der Form sein?

f4k3 21. Nov 2007 15:07

Re: Mehrere Ereignisse
 
Zitat:

Zitat von Neotracer64
Kannst du nicht ein unabhängiges Event erstellen? Muss es ein Event der Form sein?

Können schon ... wollt nur wissen ob ich mehrere Events in die Form selber packen kann, ohne n unabhängiges Event zu nehmen ...

f4k3 21. Nov 2007 15:13

Re: Mehrere Ereignisse
 
Habs rausgefunden! :D

den aktuellen Eventnamen aus der OnKlick zeile rauslöschen ...
geh mit nem doppelklick drauf ... und danach wird n neuer Rahmencode im Quelltextfenster angelegt.
Wenn ich nun in das leere Feld bei "onKlick" im Objektinspektor einen Namen Eintrage, wird der Name für das gerade erstelle Event festgelegt.

Trotzdem THX für eure Hilfe ;)

Euer f4k3

Jelly 21. Nov 2007 16:35

Re: Mehrere Ereignisse
 
Ach so war das gemeint... Und ich dachte schon du wolltest Multicast Events, wie sie allerdings nur in .NET vorhanden sind.

Phoenix 21. Nov 2007 16:53

Re: Mehrere Ereignisse
 
Zitat:

Zitat von Jelly
Ach so war das gemeint... Und ich dachte schon du wolltest Multicast Events, wie sie allerdings nur in .NET vorhanden sind.

Was nicht ganz wahr ist. ;-)
Ich hab hier ja mal ein Sample gepostet, wie man mit einem kleinen Umweg multicast delegates auch in Delphi realisieren kann.

Jelly 21. Nov 2007 17:00

Re: Mehrere Ereignisse
 
Was dann aber auf das ObserverPattern hinauslief, oder :?


Alle Zeitangaben in WEZ +1. Es ist jetzt 04:31 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