Zugriff auf Prozedur

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
springoma
Beiträge: 2
Registriert: Do 19. Jun 2014, 16:24

Zugriff auf Prozedur

Beitrag von springoma »

Hallöchen,
ich hab schon Google befragt, bin jedoch leider nicht fündig geworden.
Wie rufe ich eine procedure auf, die sich in der Klasse Form1 befindet, während sich die prozedur, in der ich sie aufrufe sich in keiner Klasse befindet?
Wenn ich versuche Zu compilieren findet er den Identifier (Sender) nicht.

Code: Alles auswählen

procedure spawn;
begin
  Form1.PaintBox1Paint(Sender);
end;
 
Schonmal schönen dank im vorraus

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: Zugriff auf Prozedur

Beitrag von theo »

Das ist ja auch Quatsch.
Erkläre lieber was du machen willst, das sieht nämlich nach Holzweg aus.

springoma
Beiträge: 2
Registriert: Do 19. Jun 2014, 16:24

Re: Zugriff auf Prozedur

Beitrag von springoma »

Ich will in der procedure spawn die prozedur PaintBox1Paint ausführen in spawn ist eigentlich noch mehr Quelltext, doch der ist für dieses Problem nicht vonnöten, der würde nur stören.

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: Zugriff auf Prozedur

Beitrag von theo »

springoma hat geschrieben:Ich will in der procedure spawn die prozedur PaintBox1Paint ausführen in spawn ist eigentlich noch mehr Quelltext, doch der ist für dieses Problem nicht vonnöten, der würde nur stören.
Nein, du sollst es in grösserem Zusammenhang erklären. Was für "dieses Problem vonnöten" ist, sehen wir dann schon.
Warum willst du diese Funktion direkt aufrufen? So macht man das nicht, man ruft Invalidate o.ä auf.
Warum willst du aus einer normalen Funktion eine Methode von TForm1 aufrufen?

Man kann das nicht vernünftig beantworten, wenn man dein Ziel und die Umstände nicht kennt. http://www.tty1.net/smart-questions_de.html#goal

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Zugriff auf Prozedur

Beitrag von mse »

Falls PaintBox1Paint() den Parameter Sender nicht verwendet:

Code: Alles auswählen

 
 Form1.PaintBox1Paint(nil);
 
Falls PaintBox1Paint() den Parameter Sender verwendet muss ein korrekter Wert mitgegeben werden.

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: Zugriff auf Prozedur

Beitrag von theo »

Bravo mse! springoma wird diesen Tipp sicher dankend entgegennehmen und kommt damit einen Schritt weiter auf dem Holzweg. :wink:

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Zugriff auf Prozedur

Beitrag von mse »

Ich habe mir angewöhnt Anwenderfragen falls möglich einfach zu Beantworten.
Auch bei der Konstruktion von MSEgui versuche ich das API so zu gestalten, dass die Arbeitsweise möglichst vieler Anwender unterstützt wird. Wenn jemand meldet "das und das funktioniert nicht" und ich feststelle, dass in MSEgui eine nicht notwendige Einschränkung besteht, entferne ich die Einschränkung, obwohl in meinen Augen die Arbeitsweise des Anwenders vielleicht abenteuerlich erscheint. Dies kommt der Orthogonalität zugute und führt vieleicht in anderen Fällen zu verblüffenden Lösungen.

Benutzeravatar
m.fuchs
Lazarusforum e. V.
Beiträge: 2807
Registriert: Fr 22. Sep 2006, 19:32
OS, Lazarus, FPC: Winux (Lazarus 2.0.10, FPC 3.2.0)
CPU-Target: x86, x64, arm
Wohnort: Berlin
Kontaktdaten:

Re: Zugriff auf Prozedur

Beitrag von m.fuchs »

Dieses Entfernen von Hürden, die "abenteuerliches Programmieren" kann aber auch zu einer massiven Verschlechterung der Codequalität führen. Entwickler sollen ruhig mal ein bisschen nachdenken, was sie eigentlich tun.
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de

mse
Beiträge: 2013
Registriert: Do 16. Okt 2008, 10:22
OS, Lazarus, FPC: Linux,Windows,FreeBSD,(MSEide+MSEgui 4.6,git master FPC 3.0.4,fixes_3_0)
CPU-Target: x86,x64,ARM

Re: Zugriff auf Prozedur

Beitrag von mse »

Ich weiss nicht so recht, wenn ich das Lazarus "Gemurkse" mit den MSEgui Lösungen vergleiche... ;-)

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: Zugriff auf Prozedur

Beitrag von theo »

mse hat geschrieben:Ich habe mir angewöhnt Anwenderfragen falls möglich einfach zu Beantworten.
Und ich habe mir angewöhnt, nicht wie ein Lexikon zu antworten, sondern verstehen zu wollen, was der Fragende erreichen will.
Der Code von springoma riecht nach multiplem Gemurkse und ich finde es nicht richtig, jemanden auf dem falschen Weg zu "begleiten".

Christian
Beiträge: 6079
Registriert: Do 21. Sep 2006, 07:51
OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
CPU-Target: AVR,ARM,x86(-64)
Wohnort: Dessau
Kontaktdaten:

Re: Zugriff auf Prozedur

Beitrag von Christian »

Deswegen hat das "Gemurkse" geschätzt 20.000 Nutzer und die "Lösung" 5 ;)
Das warscheinlich wie beim Scheisshaufen und den Fliegen...
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/

Antworten