![]() |
Variable an "andere" unit übergeben ?
HallO!
ja, Ich schon wieder :) Da man nur aus fragen und lernen schlau wird nutze ich das schamlos aus :oops: OK ich hoffe, wie immer, auf euere hilfe, ich habe zwar mehr oder weniger erfahrung mit delphi aber hin und wieder gibt es doch probleme die mir leicht vorkommen aber wo ich doch keine lösung finde...:( So lange rede kurzer sinn... Also ich habe in meinem projekt 2 Units...unit 1 enthält ein Edit Feld und einen button, nun will ich das wenn ich den button drücke der inhalt des EditFelds in dem 2ten fenster (Unit2) angezeigt wird (in nem Label)... anders gesagt ich will die variable von unit1 an unit2 übergeben! Ich bin davon überzeugt das die antwort eigentlich easy ist aber ich komm einfach auf keinen grünen zweig :) mfg. |
Re: Variable an "andere" unit übergeben ?
Einfach :
Delphi-Quellcode:
Die uses Klausel müsste Delphi dann , Nach Nachfrage, automatisch einfügen.
Form2.Label1.Caption := Edit1.text;
Form2.ShowModal; |
Re: Variable an "andere" unit übergeben ?
Hallo Freecer,
Vorsicht, denn ich denke du bist grad dabei was zu verwechseln. Wenn du von Labels und buttons und Forms spricht, handelt es sich dabei um Klassen, und nicht zwangsweise um Units. Das ist ein bedeutender Unterschied. Eine Unit ist eine Datei, die Proceduren, Variablen, und Klassen speichern kann. Wenn du aber den Inhalt eines Edit Feldes aus Form1 ansprechen willst, geht das über die dafür erzeugte Klasse. Dafür erstellt Delphi dir automatisch die Klasse TForm1 = class(TForm), und unter der ganzen Klassendefinition wird dann eine Variable (genauer eigentlich ein Pointer) definiert, der auf die TForm1 Klasse verweist... Und genauso ist es mit der Form2, auch wenn die in einer separaten Unit definiert ist. Soweit zur Klassenstruktur. Willst du jetzt, wie du schreibst den Inhalt des edit1 Feldes aus Form1 in das Edit1 Feld aus Form2 schreiben, muss du erst im implementation Teil von unit1 die unit2 einbinden. Geht ganz einfach mit (direkt unter implementation):
Delphi-Quellcode:
.
uses unit2 ;
Somit machst du die Unit2 in Unit2 zugänglich. Und da Form2 eine Klasse ist, greifst du über die Variable Form2 drauf zu. Um dann auf die ganzen Eigenschaften und Funktionen und Prozeduren aufzurufen, geht das dann so, um eben dein edit Feld aus Form2 zu füllen:
Delphi-Quellcode:
OK, das dürfte für sich sprechen. Durch einen Punkt greifst du auf die Eigenschaften und Methoden einer Klasse zu. Auf Edit1 also eben mit Form2.edit1. Und da ein Edit Feld ebenfalls wieder eine Klasse ist, mit etlichen Eigenschaften und Methoden, machst du noch ein Punkt und du kanns drauf zugreifen. Für den Inhalt eines Edit Feldes ist die Eigenschaft "text" zuständig... Also kannst du mit Form2.edit1.text den Inhalt von besagtem Feld ändern... Alles klar soweit.
Form2.edit1.text := edit1.text ;
Gruß, Tom |
Re: Variable an "andere" unit übergeben ?
SüperB kann ich dazu nur sagen ich danke für den PERFEKTEN support funktioniert einwandfrei...wie ich schon oft sagte bin echt froh das man hier so gute utnerstützung bekommt :D
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 01:50 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