![]() |
Var in einer Funktion über ein Button aufrufen !
Hallo
ich habe folgendes
Delphi-Quellcode:
function serial(user: string): string;
var: s1: string // das will ich über ein Button aufrufen ...
Delphi-Quellcode:
Die Variable ist nicht in Button deklariert sondern nur in der Funktion
procedure TForm1.Button1Click(Sender: TObject);
begin if edit1.text = serial(s1) then begin Form2.Show; end; wie kann ich s1 in Button deklarieren ? |
DP-Maintenance
Dieses Thema wurde von "Sharky" von "Windows API / MS.NET Framework API" nach "Object-Pascal / Delphi-Language" verschoben.
Ist ja keine API Frage |
Re: Var in einer Funktion über ein Button aufrufen !
Hallo,
irgendwas stimmt an deinem Konzept nicht. Wenn du in Button1Click die Variable s1 benötigst, könntest du diese in der Funktion zurückgeben oder - weniger schön - ginge es mit einer globalen Deklaration (Private-Abschnitt). Eine Variable ist generell nur in dem Block gültig, in dem sie deklariert wurde. Eine doppelte Deklaration würde folglich nichts nützen. Es wäre jedoch sinnvoll, wenn du genau erklären würdest, was du erreichen möchtest. Da gibt es sicher eine deutlich bessere Lösung. Ich gehe davon aus, dass OOP noch nichts für dich ist und ob das was bringen würde, kann ich aus deiner Beschreibung nicht entnehmen. ;) Grüße |
Re: Var in einer Funktion über ein Button aufrufen !
Ich wollte grad selber lostippeln, dann hab ich den roten Kasten gesehen.
Ich stimme mit Matze völlig überein, bis auf das hier: Zitat:
|
Re: Var in einer Funktion über ein Button aufrufen !
Zitat:
Zitat:
|
Re: Var in einer Funktion über ein Button aufrufen !
Zitat:
z.B. fButtonString (oder so was in der Art) |
Re: Var in einer Funktion über ein Button aufrufen !
Die variable s1 ist ein String in der Funktion
Über das Button habe ich vorher das String in Edit1.Text verwendet :
Delphi-Quellcode:
nun möchte ich nicht Edit1.Text als String nehmen sondern ein String von der Funktion
if edit2.text = serial(Edit1.Text)
.... Ich habe das Problem mit einer Idee gelöst :Ich die Funktion komplett in Button Code doppelt kopiert. Aber das ist vielleicht unnötig Wie kann ich das String s1 als global deklarieren ? |
Re: Var in einer Funktion über ein Button aufrufen !
Recht weit oben in deiner Unit im Private-Abschnitt:
Delphi-Quellcode:
// ...
private s1: string; // ... |
Re: Var in einer Funktion über ein Button aufrufen !
Darf man fragen, wozu Du unbedingt solche wilden Konstrukte haben möchtest? Die Variante mir der Funktion aus #1 ist doch vollkommen in Ordnung.
|
Re: Var in einer Funktion über ein Button aufrufen !
Zitat:
angezeigt. Das Programm nehmt das String s1 = ' ' !!! Ich bekomme ein Ergebnis als S1:=' nichts drin :('; |
Alle Zeitangaben in WEZ +1. Es ist jetzt 09:14 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