Autor Beitrag
delphistart
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 119



BeitragVerfasst: Fr 15.09.06 15:55 
Hallo,

ich versuch mich gerade an Delphi und bissher hats auch ganz gut geklappt. Ich habe allerdings ein Problem, dass mir einfach erscheint aber auch durch googlen nicht zu lösen war.

Ich Prozeduren, die durch klick auf verschiedene Bilder ausgelöst wird.
Ein Teil des Befehlstextes wiederholt sich aber in jeder Prozedur. Deshalb würde ich gerne eine Prozedur mit den sich wiederholenden abschnitten schreiben.
Die Prozeduren die durch Klick aufgerufen werden sollen nachdem sie die sonstigen befehle ausgeführt haben die Prozedur mit den Wiederholungen aufrufen, so dass dann noch die sich wiederholenden Befehle ausgeführt werden.

Danke schonmal für eure Antworten
Gruß Jonas
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Fr 15.09.06 16:31 
Hallo und :welcome: in der Entwickler-Ecke!

Meinst du evtl. sowas?

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
procedure TuWas;
begin
  ShowMessage('Ich tu ja was');
end;

procedure MachWas;
begin
  showmessage('Ich mach ja was');
  TuWas;
end;

procedure MachMalPause;
begin
  Showmessage('Feierabend');
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  MachWas;
  MachMalPause;
end;

_________________
We are, we were and will not be.
delphistart Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 119



BeitragVerfasst: Sa 16.09.06 14:31 
Titel: Geht leider nicht; Bestimmt ein dummer Fehler von mir...
So habe ichs auch probiert, aber der sagt -undefinierter Bezeichner-
Kann es sein, dass ich sie Prozedur irgendwo registrieren muss bevor sie geht?

Im Delphi code stehen ja oben schon die anderen Prozeduren, aber ich weis nicht wie ich meine eigene da eintragen soll ohne das es einen Fehler gibt.

Danke schonmal für die Hilfe...
Gruß Jonas
Gausi
ontopic starontopic starontopic starontopic starontopic starontopic starofftopic starofftopic star
Beiträge: 8548
Erhaltene Danke: 477

Windows 7, Windows 10
D7 PE, Delphi XE3 Prof, Delphi 10.3 CE
BeitragVerfasst: Sa 16.09.06 14:40 
Das kann mehrere Ursachen haben. In meinem Beispiel habe ich immer zuerst die Procedur geschrieben, und sie erst später im Quelltext aufgerufen. Wenn du auf diese Reihenfolge nicht achten willst, muss man die Prozedurnamen auch im Interface-Teil der Unit einfügen. Also

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
interface

Uses //was auch immer

procedure machwas;

//..

implementation
//...

Ich vermute aber stark, dass du eher in den Funktionen auf Teile von Form1 zugreifst. Nun, dann muss man entweder schreiben, dass man Sachen von Form1 meint mit
ausblenden Delphi-Quelltext
1:
2:
3:
Form1.Button1.Caption := 'Tag'
// anstelle von
// Button1.Caption := 'Nacht';
Oder man schreibt die Prozedur als eine Methode von Form1, dann muss man sie dort deklarieren, wo auch die Button-Klick-Prozeduren etc. auftauchen, und später im Quelltext die Prozedur so beginnen:
ausblenden Delphi-Quelltext
1:
2:
3:
Procedure TForm1.Machwas;
//anstelle von
//Procedure Machwas;

_________________
We are, we were and will not be.
delphistart Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 119



BeitragVerfasst: Sa 16.09.06 15:06 
Titel: Vielen Dank
Das erste wars...

Besten Dank, jetzt geht alles!

Gruß Jonas