Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Prozeder aufrufen (https://www.delphipraxis.net/141805-prozeder-aufrufen.html)

netmario 16. Okt 2009 15:23


Prozeder aufrufen
 
Wie kann ich machen, dass in einer Prozedur eine andere Prozedur dann aufgerufen wird?

DeddyH 16. Okt 2009 15:25

Re: Prozeder aufrufen
 
Schreib den Namen rein (samt benötigter Parameter).

Delphi-Quellcode:
procedure a(int: integer);
begin
  IrgendwasDollesMitInt;
end;

procedure b;
begin
  a(2);
end;

Forlan 16. Okt 2009 15:25

Re: Prozeder aufrufen
 
Einfach aufrufen? =D

Delphi-Quellcode:
procedure machwas;
begin
end;

procedure machmachwas;
begin
machwas;
end;
Roter Kasten...

Klaus01 16. Okt 2009 15:26

Re: Prozeder aufrufen
 
Grundlagen

Grüße
Klaus

mkinzler 16. Okt 2009 15:27

Re: Prozeder aufrufen
 
Ein Grundlagen-Tutorial würde wohl nicht schaden
http://www.delphi-treff.de/tutorials/grundlagen/

netmario 16. Okt 2009 15:28

Re: Prozeder aufrufen
 
Also ich möchte folgendes machen. Es soll diese Prozedur aufgerufen werden.
Delphi-Quellcode:
procedure TForm1.PlusClick(Sender: TObject);
begin
  Zwischenergebnis:=StrToFloat(sEdit1.Text);
  sEdit1.Text:='';
  Zeichen:=1;
  Kom:=0;
end;
Und zwar von dieser hier.
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if (Key in ['+']) then
  hier soll sie aufgerufen werden
end;
Allerdings wollte das nicht gehen, da dann kam nicht ausreichend Parameter oder so.

mkinzler 16. Okt 2009 15:30

Re: Prozeder aufrufen
 
Wie wäre es mit
Delphi-Quellcode:
procedure TForm1.FormKeyPress(Sender: TObject; var Key: Char);
begin
  if (Key in ['+']) then
  PlusClick( Self);
end;
?

netmario 16. Okt 2009 15:31

Re: Prozeder aufrufen
 
Zumindestens hat der Compiler jetzt nicht gemeckert, es funktioniert aber nicht.

DeddyH 16. Okt 2009 15:31

Re: Prozeder aufrufen
 
Welcher Parameter wird denn erwartet? Ein TObject, das musst Du also übergeben. Welches das sein soll, musst Du selbst entscheiden, das z.B. kann Sender, Self oder auch nil sein.

DeddyH 16. Okt 2009 15:33

Re: Prozeder aufrufen
 
Zitat:

Zitat von netmario
es funktioniert aber nicht.

Wenn ich für jedes Mal, wenn dieser Satz kommt, 50 Cent bekäme, bräuchte ich nicht mehr arbeiten :?

[edit] *Oops*, jetzt fang ich auch noch an zu pushen [/edit]

netmario 16. Okt 2009 15:34

Re: Prozeder aufrufen
 
Also, es soll folgendes funktionieren wenn ich Plus auf der Tastatur drücke soll die Prozedur aufgerufen werden die normalerweiße nur erfolgt wenn man auf den PlusButton klickt.

Klaus01 16. Okt 2009 15:36

Re: Prozeder aufrufen
 
Zitat:

Zitat von netmario
Also, es soll folgendes funktionieren wenn ich Plus auf der Tastatur drücke soll die Prozedur aufgerufen werden die normalerweiße nur erfolgt wenn man auf den PlusButton klickt.

.. dann probier es halt aus, 3 Möglichkeiten sind nicht so viele -oder meinst Du nicht?

Grüße
Klaus

mkinzler 16. Okt 2009 15:36

Re: Prozeder aufrufen
 
[ot]
Zitat:

[edit] *Oops*, jetzt fang ich auch noch an zu pushen [/edit]
[/ot]
Wen juckts. :zwinker:

DeddyH 16. Okt 2009 15:37

Re: Prozeder aufrufen
 
Hast Du einmal einen Haltepunkt gesetzt und nachgesehen, ob die Methode angesprungen wird?

netmario 16. Okt 2009 15:39

Re: Prozeder aufrufen
 
Also die Prozedur funktioniert wenn ich sie direkt per Button Click aufrufe. Wenn ich jetzt Plus auf dem Numblock drücke gehts nicht.

Der.Kaktus 16. Okt 2009 15:39

Re: Prozeder aufrufen
 
Zitat:

Zitat von netmario
Also, es soll folgendes funktionieren wenn ich Plus auf der Tastatur drücke soll die Prozedur aufgerufen werden die normalerweiße nur erfolgt wenn man auf den PlusButton klickt.

Nun auchmal einschalte..willst Du Delphi lernen oder alles vorgelegt haben? Lies mal paar Grundlagen(Adressen wurden ja schon geschrieben) und bissl Selbsstudium.. dann klappt es auch mit dem "Plus-Button".. :wall:

Sorry, musste mal sein :oops:

Klaus01 16. Okt 2009 15:42

Re: Prozeder aufrufen
 
hast Du Delphi-Referenz durchsuchenTForm.keyPreview auf true gesetzt?

Grüße
Klaus

netmario 16. Okt 2009 15:42

Re: Prozeder aufrufen
 
1. Der Plusbutton funktioniert wenn man auf ihn klickt, es funktioniert nur nicht das indirekte aktivieren.
2. Ich habe diese 3 Möglichkeiten getestet und es scheint keine zu funktioinieren.
3. Ich lerne Delphi gerade in der Schule, ich hatte das halt noch nicht, es tut mir Leid.

DeddyH 16. Okt 2009 15:45

Re: Prozeder aufrufen
 
Setz doch einmal die Eigenschaft "KeyPreview" Deines Formulars auf true wie von Klaus vorgeschlagen.

netmario 16. Okt 2009 15:47

Re: Prozeder aufrufen
 
Ja wollte ich ja testen und habe es auch jetzt getested und es funktioniert einwandfrei, vielen Dank.


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