AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Variable einer anderen Form übergeben!
Thema durchsuchen
Ansicht
Themen-Optionen

Variable einer anderen Form übergeben!

Ein Thema von Mitchl55 · begonnen am 2. Mär 2005 · letzter Beitrag vom 2. Mär 2005
Antwort Antwort
Mitchl55

Registriert seit: 20. Feb 2003
Ort: Meppen
159 Beiträge
 
Delphi 7 Enterprise
 
#1

Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:03
Hallo,

wie kann ich den eine Variable x:='Test'; von Form1 an Form2 übergeben?
Bzw. gleich in ein CheckListView! Habe leider so nichts passendes gefunden!
Muss man die Variable vieleicht für alle Formen frei geben??

Danke & Gruß

Mitchl
  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
 
#2

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:06
Die Variable in Form1 global deklarieren (z.B. unter public).

Im Form2 bei den uses Unit1 eintragen und du kannst mittels

Variable := Form1.x; darauf zugreifen oder ohne vorangestelltes "Form1", wenn die Variable in Form1 da deklariert ist, wo "Form1: TForm1;" steht.

Aber das hatten wir schon des öfteren.
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#3

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:08
Du mußt die Variable nur dort deklarieren, wo alle darauf zugreifen können, die müssen.


z.B.
* die Variable in Unit2 (wo Form2 ist) global definieren und in Unit1 (wo Form1 ist) im Uses-Abschnitt die Unit2 eintragen
* die Variable in einer eigenen Unit deklarieren und dann dieses Unit in Unit1 und Unit2 unter Uses angeben
...
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#4

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:09
Wenn du in Form2 auf irgendeine Kompo aus Form1 zugreifen willst, sieht das in etwa so aus:
Delphi-Quellcode:
...
uses ...., Unit1;

...

procedure TForm2.WasWeissIch(Sender: TObject);
begin
  Form1.CheckBox1.Checked:= True;
  ...
end;
Du musst halt im QT nur mit Form1. angeben, dass die Komponente in einem anderen Formular ist.

MfG
Binärbaum
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Benutzerbild von Sharky
Sharky

Registriert seit: 29. Mai 2002
Ort: Frankfurt
8.251 Beiträge
 
Delphi 2006 Professional
 
#5

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:13
Hai Mitchl55,

mein Vorschlag ist :

Dekrariere die Variable im Privat Teil deiner Form.
Dann schreibe Dir eine Methode um auf die Variable zugreifen zu können.
Jetzt machst Du jeden Zugriff auf deine Variable über diese Methode.
Stephan B.
"Lasst den Gänsen ihre Füßchen"
  Mit Zitat antworten Zitat
Mitchl55

Registriert seit: 20. Feb 2003
Ort: Meppen
159 Beiträge
 
Delphi 7 Enterprise
 
#6

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:42
Danke, funktioniert soweit. Wie funktioniert das, wenn ich mehrere Variablen
übergeben möchte? mit Variable [x]? Ist es möglich die Daten auch gleich in
eine Checklistbox in Form2 zu übergeben, das funktioniert si noch nicht?

Danke & Gruß

Mitchl
  Mit Zitat antworten Zitat
Benutzerbild von Binärbaum
Binärbaum

Registriert seit: 19. Jan 2005
Ort: Elstra
764 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:55
Zitat von Mitchl55:
Danke, funktioniert soweit. Wie funktioniert das, wenn ich mehrere Variablen
übergeben möchte? mit Variable [x]? Ist es möglich die Daten auch gleich in
eine Checklistbox in Form2 zu übergeben, das funktioniert si noch nicht?
Ja, prinzipiell geht das. Es kommt nur drauf an, in welcher Form die Daten vorliegen. Wenn man zum Beispiel in Form1 schon eine CheckListBox hat, kann man deren Items z.B. folgendermaßen an eine CheckListBox in Form2 übergeben:
Form2.CheckListBox1.Items:= Form1.andereCheckListBox.Items; Nach diesem Prinzip kann man auch andere Werte übergeben.
There are exactly 10 kinds of people: those who understand binary, and those who don't.
---
"Software reift beim Kunden. Bei Hardware ist es anders: Hardware fault beim Kunden." - Rainer G. Spallek
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.115 Beiträge
 
Delphi 12 Athens
 
#8

Re: Variable einer anderen Form übergeben!

  Alt 2. Mär 2005, 16:58
Klar, wenn du Unit2 (von Form2) in Unit1 unter User eingefügt hast, dann kannst du auch "alle" Objekte in Form2 zugreifen

Code:
// Unit1.pas
...
uses ...., [color=#ff0000]Unit2[/color];

...

procedure TForm1.WasWeissIch(Sender: TObject);
begin
  [color=#ff0000]Form2[/color].[color=#0000ff]CheckBox1[/color].Checked := ...
  [color=#ff0000]Form2[/color].[color=#0000ff]CheckBox2[/color]Checked := ...
  [color=#ff0000]Form2[/color].[color=#0000ff]CheckBox3[/color]Checked := ...
  ...
end;
[edit]
komisch, es hieß zwar, es sei ein Neuer Beitrag da, aber es wurde unten in den (letzten 10) Beiträgen nichts Neues angezeigt?
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  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 17:22 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