Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Verweis per Button in ein anderes Formular (https://www.delphipraxis.net/52001-verweis-per-button-ein-anderes-formular.html)

homerunjack 22. Aug 2005 14:33


Verweis per Button in ein anderes Formular
 
Ich habe zwei Formulare form1 und form2 und will durch einen Button im form1 auf das form2 zugreifen.
was muss ich einschreiben, damit das klappt?


procedure TForm1.Button1Click(Sender: TObject);

TheXception 22. Aug 2005 14:40

Re: Verweis per Button in ein anderes Formular
 
alse erstes die unit einbinden:
Delphi-Quellcode:
uses unit2;
Dann kannst z.B. so auf die 2te Form zugreifen:
Delphi-Quellcode:
Form2.Caption:='Neue Formcaption';
Form2.Label1.caption:='test';

faux 22. Aug 2005 14:42

Re: Verweis per Button in ein anderes Formular
 
Ich glaube er will sie mit "Form2.Show2" anzeigen.

homerunjack 22. Aug 2005 14:49

Re: Verweis per Button in ein anderes Formular
 
Ich will wie mit html einfach
nur ein hyperlink

in html ausgedrückt:

Button

einfach nur das das andere formular angezeigt wird, und das alte (form1) offen bleibt

marabu 22. Aug 2005 14:52

Re: Verweis per Button in ein anderes Formular
 
Hallo homerunjack,

herzlich willkommen in der Delphi-PRAXiS.

Wenn du in deiner ButtonClick()-Routine Form2.ShowModal verwendest, dann erkennt die IDE von selbst, dass die Unit von Form2 eingebunden werden muss. Und mit ShowModal() geht die Arbeit erst dann weiter, wenn du Form2 geschlossen hast.

Grüße vom marabu

Khabarakh 22. Aug 2005 14:58

Re: Verweis per Button in ein anderes Formular
 
Ich würde die von Delphi bereitgestellten globalen Variablen nicht benutzen. Erstens hat es eben nicht sehr viel mit OOP zu tun (zu globalen Variablen an sich gibt es schon genug Threads), zweitens bekommt man spätestens dann Probleme, wenn man mehrere Instanzen des Formulars benötigt. Und selbst wenn nur eine gebraucht wird, ist es doch wirklich nicht viel Arbeit, dafür eine lokale Variable oder ein Feld im Hauptformular anzulegen.

Aber für das erste Projekt geht das schon in Ordnung :wink: .

homerunjack 22. Aug 2005 15:03

Re: Verweis per Button in ein anderes Formular
 
Ja, das mit dem Form2.ShowModal geht sehr gut. danke marabu
was muss ich denn schreiben, um dann trotzdem noch auf form1 zugreifen zu können (wenn form2 angezeigt wird)

TheXception 22. Aug 2005 15:04

Re: Verweis per Button in ein anderes Formular
 
Nimm einfach nur Form2.Show;

MichaelP 22. Aug 2005 15:06

Re: Verweis per Button in ein anderes Formular
 
Hallo homerunjack,



einfach form2.show;

gruß

Michael

kohennigs 22. Aug 2005 15:07

Re: Verweis per Button in ein anderes Formular
 
Willkommen in der DP !

...also das
mit

Delphi-Quellcode:
 Form2.ShowModal
ist nicht wirklich schön.

Wie wäre es denn damit ?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
wFormZwei:TForm2;
begin
wFormZwei:=TForm2.Create(Self);
wFormZwei.ShowModal;
end;

Wie von marabu gesagt kannst du erst wieder auf Form1 zugreifen, wenn du Form2 geschlossen hast,
wenn du ShowModal benutzt.


MfG

KaiO

TheXception 22. Aug 2005 15:51

Re: Verweis per Button in ein anderes Formular
 
Zitat:

Zitat von kohennigs
Wie wäre es denn damit ?

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
wFormZwei:TForm2;
begin
wFormZwei:=TForm2.Create(Self);
wFormZwei.ShowModal;
end;

Ich glaub er brauch den Form nur 1 mal. Und die wird schon erstellt. man muss sie mit form.create(self) ja nicht nochmal erstellen. 1 mal langt glaub ich schon.

Khabarakh 22. Aug 2005 15:52

Re: Verweis per Button in ein anderes Formular
 
Das ist kein Grund, auf OOP zu verzichten. Ein Feld ist immer noch "schöner" und auch schnell deklariert.

TheXception 22. Aug 2005 15:55

Re: Verweis per Button in ein anderes Formular
 
Zitat:

Zitat von homerunjack
einfach nur das das andere formular angezeigt wird, und das alte (form1) offen bleibt

Ich denke nicht das er das noch ausweiten will sondern er will es einfach nur anzeigen. da ist Form2.Show; nunmal das einfachste.

Khabarakh 22. Aug 2005 16:15

Re: Verweis per Button in ein anderes Formular
 
Wie ich schon geschrieben habe, für das erste oder zweite Mal ist diese Vorgehensweise völlig in Ordnung. Wenn man sich aber etwas mit OOP beschäftigt hat, sollte man IMHO die zweite Variante benutzen. Vor allem im Hinblick auf einen Wechsel zu .NET, denn dort wird OOP vollständig durchgezogen, man arbeitet nur noch mit der Form-Klasse.

tigerman33 22. Aug 2005 16:24

Re: Verweis per Button in ein anderes Formular
 
@Khabarakh:

OOP=gut
nicht-OOP=böse

Meinst du nicht, dass das etwas einfach gefasst ist?

marabu 22. Aug 2005 16:33

Re: Verweis per Button in ein anderes Formular
 
Die richtige Hilfe ist immer die, welche das konkrete Problem des Hilfesuchenden löst. Wer sich prügeln will, der sollte das "vor der Tür" machen.

Freundliche Grüße vom marabu

Khabarakh 22. Aug 2005 17:04

Re: Verweis per Button in ein anderes Formular
 
Ich habe auch nichts mehr Neues zu sagen. Wie schon geschrieben, um den Sinn und Unnsinn von OOP und globalen Variablen gibt es schon zahlreiche Threads, hier bietet es sich einfach ohne großen Aufwand an und die Betonung meines letzten Posts liegt auf der großgeschriebenen Abkürzung.

Letztendlich hat jeder seinen eigenen Stil.

TheXception 22. Aug 2005 17:19

Re: Verweis per Button in ein anderes Formular
 
Ich würd sagen wir belassen es jetzt damit. Schließlich hat er nun 2 lösungen. Welche er dann verwendet ist ihm selbst überlassen.

homerunjack 23. Aug 2005 20:55

Re: Verweis per Button in ein anderes Formular
 
ok, danke erstmal. ihr habt mein problem ja ausreichend diskutiert. für mich als delphi laien reicht erstmal form2.show;
Danke :P


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:41 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