Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Mit Button-klick eine neue Fenster öffnen (https://www.delphipraxis.net/69033-mit-button-klick-eine-neue-fenster-oeffnen.html)

Chiara87 9. Mai 2006 14:20


Mit Button-klick eine neue Fenster öffnen
 
Hi
Kann mich jemand helfen?
Ich muss für meine Projektarbeit ein Programm mit Delphi 3 pro erstellen. Es handelt sich um ein Programm um die Medien der Lehrerbibliothek in meine Schule zu verwalten.
D.h. die Lehrer können die medien suchen und entleihen können so wie in eine normale Bibliothek.
Aber meine Kenntnisse mit delphi sind nicht so viele.
Ich möchte dass wenn man auf einen Button klickt eine neue Formular erscheint z.B Form2.
Kann mir jemand sagen wie der Quelltext aussieht?
Das wäre nett von euch!!
Ciao by chiara87

DGL-luke 9. Mai 2006 14:24

Re: Mit Button-klick eine neue Fenster öffnen
 
Delphi-Quellcode:
Form2.Show;
mehr sollts nicht gewesen sein...

ansonsten bekommst du von

Delphi-Quellcode:
Form2.Showmodal;
Einen Rückgabewert, der dir sagt, auf welchen Button der User geklickt hat, um das Fenster zu schließen. Das solltest du dann bei dem Button bei Delphi-Referenz durchsuchenModalResult einstellen.

Chiara87 9. Mai 2006 15:01

Noch eine frage
 
danke
noch eine frage?
Muss die Formulare verknüpfen damit Form2 erkannt wird?

Neon-chan 9. Mai 2006 15:03

Re: Mit Button-klick eine neue Fenster öffnen
 
Wenn du das Formular dauerhaft anzeigen willst, dann würd ich es auch so machen wie vorgeschlagen..wenn es aber ein Dialog sein soll (also das Hauptprogramm soll solange warten, bis der User in dem Formular fertig ist) würd ich eher dynamisch Aufrufen...find ich eleganter und effektiver (Resourcen sind nur belegt wenn auch gebraucht)..hierzu legst du das Form2 ganz normal als unit an und dann folgender Code im Hauptprogramm:

Code:
uses ..,Form2,..

procedure TForm1.ShowForm2;
var
  Form2 : TForm2;
begin
  Form2 := TForm2.Create(nil); //statt nil kann hier auch die übergeordnete Komponente angegeben werden (zB Form1)
  try
    if Form2.ShowModal = mrOk then
      //code
  finally
    Form2.Free;
  end;
end;
zum Verknüpfen: die Unit des untergeordneten Formulares muss in den Uses des Hauptformulars stehen

DGL-luke 9. Mai 2006 15:04

Re: Mit Button-klick eine neue Fenster öffnen
 
Klar. Es empfiehlt sich manchmal auch, das "var Form2: TForm2" aus unit2 (und der liste der autmatisch erzeugten fenster) herauszunehmen und in die hauptunit (vorzugsweise als private-feld in Form1) zu verlegen. Dann kann man es manuell über "form2 := TForm2.Create" erzeugen.

//Roter Kasten: Ja... genau so...


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