AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Variablen Übergeben (mit Hilfe von property)
Thema durchsuchen
Ansicht
Themen-Optionen

Variablen Übergeben (mit Hilfe von property)

Offene Frage von "Stelo"
Ein Thema von Stelo · begonnen am 12. Jan 2008 · letzter Beitrag vom 12. Jan 2008
Antwort Antwort
Stelo

Registriert seit: 12. Jan 2008
19 Beiträge
 
#1

Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 18:48
Hallo,
ich weiß, dass habt ihr hier im Forum schon oft gehört, aber auch ich möchte eine Variable von Form2 zu Form3 übergeben.
Ich habe gegoogelt und auch hier im Board gesucht und bin dabei auf diese property gestoßen und trotzdem funktioniert nichts.
Es wird keine Fehlermeldung angezeigt, aber in meinem Labelfeld wird eben auch nichts ausgegeben ...

Also nun mal ein paar Auszüge aus dem Code:

Unit2 // Form2
Delphi-Quellcode:
  private
    code : string;
  public
 property neu_code: string read code;
  end;
Unit3 //Form3
Delphi-Quellcode:
implementation

uses Unit2;

{$R *.dfm}

procedure TForm3.FormCreate(Sender: TObject);
begin
Label3.Caption := form2.neu_code;
end;
Vielen Dank schon einmal für eure Hilfe und Geduld.
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 19:05
Herzlich willkommen in der Delphi-PRAXiS, Stelo.

Deine Forms werden in einer bestimmten Reihenfolge erstellt, vermutlich Form2 direkt vor Form3. Dein Zugriff auf die property Form2.neu_code geschieht zu einem Zeitpunkt, zu dem diese property den von dir erwarteten Inhalt vielleicht noch gar nicht aufweist? Was schreibst du denn im Ereignis OnCreate() von Form2 dort rein?

Freundliche Grüße vom marabu
  Mit Zitat antworten Zitat
Stelo

Registriert seit: 12. Jan 2008
19 Beiträge
 
#3

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 19:23
Dieses Ereignis benutzte ich gar nicht.

In meiner Unit2 steht nur:

Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
//hier der code, wäre jetzt zu lang und unwichtig

Form2.Close;
Form3.Show;

end;
Und das wars...
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 19:26
Dann liest du in deinem Beispiel auch "nichts" aus - per definitionem einen leeren String.
  Mit Zitat antworten Zitat
Stelo

Registriert seit: 12. Jan 2008
19 Beiträge
 
#5

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 19:49
Naja doch, in der Unit 3 les ich das ja dann aus:

Delphi-Quellcode:
procedure TForm3.FormCreate(Sender: TObject);
begin
Label3.Caption := form2.neu_code;
end;
Muss ich in der Unit 2 auch etwas auslesen?
  Mit Zitat antworten Zitat
dominikkv

Registriert seit: 30. Sep 2006
Ort: Gundelfingen
1.109 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 20:00
Du hast ein Zeitliches Problem!
Du greifst im FormCreate der Form3 auf Form2 zu. Diese Methode wird (wahrscheinlich) beim Programmstart ausgeführt.
Das heißt die einzige Möglichkeit die Variable "code" zu verändern wäre beim Programmstart noch vor TForm3.FormCreate, dh bei TForm2.FormCreate.

Wenn du da also die Variable nicht veränderst wirst du einen leeren String auslesen.
Dominik
Wer anderen eine Grube gräbt, hat ein Gruben-Grab-Gerät!
  Mit Zitat antworten Zitat
Stelo

Registriert seit: 12. Jan 2008
19 Beiträge
 
#7

Re: Variablen Übergeben (mit Hilfe von property)

  Alt 12. Jan 2008, 20:14
Hmm ... aber in die Variable code werden ja Daten reingeschrieben, die dann erst nach dem Klicken auf Form2 in Form2 verarbeitet werden.
Also kann ich das ja gar nicht schon in Form2.Create() schreiben ...
  Mit Zitat antworten Zitat
Antwort Antwort


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 23:28 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz