AGB  ·  Datenschutz  ·  Impressum  







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

Neues Formular aufrufen

Ein Thema von AlexWalli · begonnen am 18. Jul 2009 · letzter Beitrag vom 18. Jul 2009
Antwort Antwort
AlexWalli

Registriert seit: 19. Apr 2009
3 Beiträge
 
#1

Neues Formular aufrufen

  Alt 18. Jul 2009, 14:14
Hallo,
Ich hab nen kleinen Taschenrechner programmiert, der aus nem Editfeld seine Gleichung rauszieht.
Jetzt möchte ich das ganze dahingehend erweitern, dass die Gleichung als Funktion gelesen wird(dann natürlich mit Parametern) und ein Graph ausgegeben wird. das an sich ist alles gar kein Problem..
Weil aber das Feld mit dem Koordinatensystem unanhängig vom Rest sein soll, will ich dsa in ein neues Formular übergeben. jetzt kommts: wie kann ich ein neues Formular aufrufen/erstellen? (in der IDE ist es schon fertig)und wie kann ich Variablen daran übergeben? müssen dann beide auf eine unit zurückgreifen?
Danke im Vorraus
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#2

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 14:23
Delphi-Quellcode:
var
  NeuesForm: TNeuesForm; // oder wie auch immer das Ding heist
...
  NeuesForm := TNeuesForm.Create(nil);
  try
    NeuesForm.Variable1 := <was_auch_immer>; // Variable1 muss als Property in TNeuesForm angelegt sein.
    if NeuesForm.ShowNodal = mrOK then begin // Einfach in TNeuesForm beim Schließen ModalResult := mrOK zuweisen.
      // tue was nötig ist
    end;
  finally
    NeuesForm.Free;
  end;
...
Uwe Raabe
  Mit Zitat antworten Zitat
Satty67

Registriert seit: 24. Feb 2007
Ort: Baden
1.566 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 14:48
In der IDE erstellte Formulare sind aber ohne Änderung der Einstellungen bereits erzeugt. Das Beispiel ist für Formulare im Stil eines Dialogs aber absolut sinnvoll, nur könnte man dann auch die automatische Erzeugung deaktivieren.
  Mit Zitat antworten Zitat
AlexWalli

Registriert seit: 19. Apr 2009
3 Beiträge
 
#4

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 16:38
Gut. Danke. Das hat mir schonmal gut weitergeholfen.
aber was genau frage ich mit "ShowNodal = mrOK" ab?
mein Delphi(Leider nur in Version 3) kennt das nicht.
ist das wichtig?
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.861 Beiträge
 
Delphi 11 Alexandria
 
#5

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 16:53
Man kann ein Formuar statt mit .Show mit .ShowModal modal anzeigen. Dann muss es geschlossen werden, bevor der Code an dieser Stelle fortgeführt wird.
Ein modales Fenster schliesst man durch Zuweisen von .ModalResult entweder explizit oder durch Setzen des Wertes in der gleichnamigen Eigenschaft eines Buttons des Formulares. Mehrere Buttons könne so mit verschiedenen Werten belegt werden ( Z.B OK oder Abbrechen) in beiden Fällen wird dann das modale Fenster geschlossen.
Anhand des Rückgabewertes kann dann das weitere Vorgehen entschieden werden
if Form.ShowModal = mrOK then ...
Markus Kinzler
  Mit Zitat antworten Zitat
AlexWalli

Registriert seit: 19. Apr 2009
3 Beiträge
 
#6

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 16:59
Ok. Dann ist alles Klar.
Danke an alle.
  Mit Zitat antworten Zitat
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#7

Re: Neues Formular aufrufen

  Alt 18. Jul 2009, 17:18
Zitat von AlexWalli:
aber was genau frage ich mit "ShowNodal = mrOK" ab?
mein Delphi(Leider nur in Version 3) kennt das nicht.
Blöder Tippfehler
Uwe Raabe
  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 22:10 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