AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Variable Unitübergreifend

Ein Thema von Uceo · begonnen am 24. Jan 2004 · letzter Beitrag vom 24. Jan 2004
Antwort Antwort
Uceo

Registriert seit: 12. Jan 2004
39 Beiträge
 
Delphi 7 Enterprise
 
#1

Variable Unitübergreifend

  Alt 24. Jan 2004, 12:45
Hallo, ich habe in meiner Unit2 eine variable namens "company". In Unit 3 möchte ich diese variable verwenden. Aber delphi beschwert sich mit undefinierter bezeichner. Wie kann ich aus der alten Unit die variable hohlen? Danke!
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 12:49
Wo hast du sie denn in Unit2 deklariert? Und hast du Unit2 in den uses von Unit3 aufgenommen?

Btw. sind globale Variablen sehr gefährlcih und nicht OOP konform. Ich würde sie vermeiden wo es geht und stattdessen den Wertt als parameter einer Funktion weitergeben.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Uceo

Registriert seit: 12. Jan 2004
39 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 13:31
Und wie mache ich eine variable global?
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#4

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 14:13
definier sie einfach über "implementation"

Delphi-Quellcode:
var
  Form1: TForm1;
  deineVariable: DeinTyp;

...

implementation
Mario
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 15:30
oder deklariere sie unter public
Delphi-Quellcode:
public
  a: integer;
In Form3 dann:
Delphi-Quellcode:
uses Unit2;

...

//Aufruf:
Form2.a := 5;
  Mit Zitat antworten Zitat
Uceo

Registriert seit: 12. Jan 2004
39 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 16:26
Ich habe jetzt in Unit2:

Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
variable := String(Edit1.Text);
end;
und in Unit3:

Delphi-Quellcode:
procedure TForm3.FormCreate(Sender: TObject);
begin
form3.Caption := 'Musikspiel ' + String(Form2.company);
end;
Aber in Unit3 schreibt er einfach in die Form3 'Musikspiel ' und nichts weiter. Es wird also nicht übernommen! Woran kann das liegen?
  Mit Zitat antworten Zitat
Benutzerbild von Stanlay Hanks
Stanlay Hanks

Registriert seit: 1. Mär 2003
2.078 Beiträge
 
Delphi 2005 Professional
 
#7

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 16:33
Zitat von Uceo:
Ich habe jetzt in Unit2:

Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
variable := String(Edit1.Text);
end;
und in Unit3:

Delphi-Quellcode:
procedure TForm3.FormCreate(Sender: TObject);
begin
form3.Caption := 'Musikspiel ' + String(Form2.company);
end;
Aber in Unit3 schreibt er einfach in die Form3 'Musikspiel ' und nichts weiter. Es wird also nicht übernommen! Woran kann das liegen?
Hmmm...Hast du "Variable := String()..." nur als Beispiel geschrieben oder heißt die Variable wirklich so? Dann weist du ja nicht "company" den Wert zu, sondern "Variable". Im Prinzip ist also "company" noch leer.

Man liest sich, Stanlay
  Mit Zitat antworten Zitat
Uceo

Registriert seit: 12. Jan 2004
39 Beiträge
 
Delphi 7 Enterprise
 
#8

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 17:01
Das war nur als beispiel!
  Mit Zitat antworten Zitat
Uceo

Registriert seit: 12. Jan 2004
39 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: Variable Unitübergreifend

  Alt 24. Jan 2004, 18:50
So, hier ist das ganze Problem: Das Problem auf meinem Server. Die Variablen werden alle in Unit2 vereinbart und gebraucht. Es handelt sich um die Texteingabe variable "company". In Unit3 soll das als Fenstertitel: form3.caption := 'Das Musikspiel ' + String(form2.company); angezeigt werden, es wird aber nur Musikspiel angezeigt und die Variable sagt mir Delphi ist ''. Ich hoffe ihr könnt mir helfen! Vielen Dank! Uceo
  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 07:42 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