AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Eigene Prozedur : kein zugrifff auf eigenschaften von Label
Thema durchsuchen
Ansicht
Themen-Optionen

Eigene Prozedur : kein zugrifff auf eigenschaften von Label

Ein Thema von couver · begonnen am 26. Feb 2021 · letzter Beitrag vom 10. Mär 2021
Antwort Antwort
Seite 1 von 2  1 2      
couver

Registriert seit: 26. Feb 2021
6 Beiträge
 
#1

Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 10:32
Delphi-Version: 10.3 Rio
Moin!

ich würde gerne eine eigene Prozdedur schreiben um einen Code etwas aufzuräumen und vonnda aus die Caption eines label ändern aber Delphi sagt da plötzlicher kennt das label nicht aber in einer button click prozedur erkennt er es?

könnt ihr mir helfen?

Code:
procedure losAusgeben(var zufall: integer);
begin
  dec(leerCount);
  NameLbl.Caption := dinerRonnebergerCrew[zufall,0]; //Da spinnt er rum wegen dem Label
  dinerRonnebergerCrew[zufall,0]:= '';
end;
Danke!
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 10:47
Es handlet sich hier um eine freie Prozedur und nicht um eine Methode. Wandele diese in eine Methode der Form um, oder füge den Forminstanzvariablennamen als Suffix hinzu (wovon ich aber abraten würde!)
Markus Kinzler
  Mit Zitat antworten Zitat
couver

Registriert seit: 26. Feb 2021
6 Beiträge
 
#3

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 11:04
Es handlet sich hier um eine freie Prozedur und nicht um eine Methode. Wandele diese in eine Methode der Form um, oder füge den Forminstanzvariablennamen als Suffix hinzu (wovon ich aber abraten würde!)
Ok, danke für die Schnelle antwort... leider weiß ich nicht genau wie ich daraus eine Methode mache? könntest du mir da vllt. weiterhelfen?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.869 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 11:14
Im Interface-Teil in der Dekaration der Formularklasse ergänzen:

Delphi-Quellcode:
<TFormname> = class (TForm)
  ...
  procedure losAusgeben(var zufall: integer);
  ..
end;
Und dann bei der Implementation:
Delphi-Quellcode:
procedure <TFormname>.losAusgeben(var zufall: integer);
...
Markus Kinzler
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#5

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 11:37
Oder du nimmst ein label im aufruf entgegen.
Dann ist es universeller.

Delphi-Quellcode:
procedure MachWas(const zahl: integer; const Label: TLabel);
Begin
  Label.Caption := IntToStr(zahl);
End;

...

// aufruf dann so irgendwo:
MachWas(1, CrewLabel);
Ungetestet aber sollte funzen.

Ps: beim aufruf muss der scope passen.
Also aus irgend einer 'Form1.blabla' methode.
Sonst "Machwas(9, Form1.CrewLabel)"
Gruß vom KodeZwerg

Geändert von KodeZwerg (26. Feb 2021 um 11:43 Uhr)
  Mit Zitat antworten Zitat
couver

Registriert seit: 26. Feb 2021
6 Beiträge
 
#6

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 12:22
Oder du nimmst ein label im aufruf entgegen.
Dann ist es universeller.

Delphi-Quellcode:
procedure MachWas(const zahl: integer; const Label: TLabel);
Begin
  Label.Caption := IntToStr(zahl);
End;

...

// aufruf dann so irgendwo:
MachWas(1, CrewLabel);
Ungetestet aber sollte funzen.

Ps: beim aufruf muss der scope passen.
Also aus irgend einer 'Form1.blabla' methode.
Sonst "Machwas(9, Form1.CrewLabel)"
Also damit kann ich jetzt leider nix anfangen.
  Mit Zitat antworten Zitat
couver

Registriert seit: 26. Feb 2021
6 Beiträge
 
#7

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 12:26
Im Interface-Teil in der Dekaration der Formularklasse ergänzen:

Delphi-Quellcode:
<TFormname> = class (TForm)
  ...
  procedure losAusgeben(var zufall: integer);
  ..
end;
Und dann bei der Implementation:
Delphi-Quellcode:
procedure <TFormname>.losAusgeben(var zufall: integer);
...
DANKESCHÖN!!! Das funktioniert jetzt Einwandfrei! Und ich habe noch was gelernt an perfekt.

VIelen Dank für die Hilfe
Schöne Grüße!

P.S: Mein erster Forums eintarg überhaupt iwo und schon direkt so positive erfahrung: SCHÖÖÖN!
  Mit Zitat antworten Zitat
Andreas13

Registriert seit: 14. Okt 2006
Ort: Nürnberg
721 Beiträge
 
Delphi XE5 Professional
 
#8

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 12:51
Zitat von couver:
P.S: Mein erster Forums eintarg überhaupt iwo und schon direkt so positive erfahrung: SCHÖÖÖN!
Du hast eben das Beste aller möglichen Delphi-Foren ausgewählt...
Willkommen im Club!
Gruß, Andreas
Grüße, Andreas
Wenn man seinem Nächsten einen steilen Berg hinaufhilft, kommt man selbst dem Gipfel näher. (John C. Cornelius)
  Mit Zitat antworten Zitat
Blup

Registriert seit: 7. Aug 2008
Ort: Brandenburg
1.487 Beiträge
 
Delphi 12 Athens
 
#9

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 11:43
Noch ein anderer Hinweis zu var, out, const:
Diese verwendet man nur wenn der Parameter als Referenz übergeben werden soll.
Das ist in diesem Beispiel nicht sinnvoll.
  Mit Zitat antworten Zitat
DieDolly

Registriert seit: 22. Jun 2018
2.175 Beiträge
 
#10

AW: Eigene Prozedur : kein zugrifff auf eigenschaften von Label

  Alt 26. Feb 2021, 12:01
Ich glauber ihr verwirrt ihn oder sie nur mit all den Vorschlägen. mkinzler Vorschlag iist das was gesucht ist.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      

 

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:25 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 by Thomas Breitkreuz