[gelöst] wechselnde Formularseiten

Für Fragen von Einsteigern und Programmieranfängern...
Antworten
Francine1989
Beiträge: 3
Registriert: Mi 7. Mai 2014, 11:55

[gelöst] wechselnde Formularseiten

Beitrag von Francine1989 »

Hallo erstmal, ich bin ganz neu und ein absoluter Einsteiger in Sachen Programmierung. :shock:
Deshalb ist meine Frage für einige sicherlich absolut lächerlich, aber ich komme da leider nicht weiter...

Folgendes Problem soll gelöst werden: Es soll ein Projekt erstellt werden, dass auf dem Prinzip wechselnder Formularseiten basiert. Wie das aussehen soll, habe ich mit hochgeladen.

Ich habe kein Problem damit, das alles zu realisieren, mein Problem ist, dass wenn ich das Programm starte, trotzdem alle Formularfelder sehe. Erst wenn ich auf "weiter" klicke, habe ich das Zielformular so, wie es aussehen soll und wenn ich dann "zurück" klicke, habe ich das Startformular so, wie es aussehen soll. Wie erreiche ich also nun, dass direkt beim Programmstart nur die Felder des Startformulars angezeigt werden?

Mein Quelltext sieht bisher so aus (Button 1: "weiter", Button 2: "beenden", Button 3: "zurück", Label 1: "Formulartext 1. Seite", Label 2: "Formulartext 2. Seite"):

Code: Alles auswählen

procedure TForm1.Button1Click(Sender: TObject);
begin
  Button1.visible:=false;
  Button3.visible:=true;
  Label1.visible:=false;
  Label2.visible:=true;
  Form1.caption:='Zielformular';
end;
 
procedure TForm1.Button2Click(Sender: TObject);
begin
  close;
end;
 
procedure TForm1.Button3Click(Sender: TObject);
begin
  Button3.visible:=false;
  Button1.visible:=true;
  Label2.visible:=false;
  Label1.visible:=true;
  Form1.caption:='Startformular';
end;                            
 
Vielen Dank für eure Hilfe. :oops:
Dateianhänge
Vorgabe Zielformular
Vorgabe Zielformular
Zwischenablage04.jpg (9.29 KiB) 1071 mal betrachtet
Vorgabe Startformular
Vorgabe Startformular
Zwischenablage06.jpg (9.05 KiB) 1071 mal betrachtet
Problem meines Programms beim Starten
Problem meines Programms beim Starten
Zuletzt geändert von Lori am Do 8. Mai 2014, 16:15, insgesamt 2-mal geändert.
Grund: Highlighter


Philos
Beiträge: 43
Registriert: Mo 3. Mär 2014, 16:06
OS, Lazarus, FPC: Ubuntu Linux 14.04, Windows 7/8, Lazarus 1.2.2, Delphi XE5
CPU-Target: amd64
Wohnort: Rostock
Kontaktdaten:

Re: wechselnde Formularseiten

Beitrag von Philos »

Theo hat da natürlich Recht und die bessere Variante beschrieben. Aber wenn du es so machen willst, wie du es beschrieben hast, kannst du es folgendermaßen tun: Es gibt ein OnFormCreate-Event des Formulars ( im Object-Inspector unter Events zu finden ). Dieses musst du nur erstellen und kannst dann da deinen Startzustand reinschreiben. Dieser wird dann, wenn das Formular beim Start erzeugt wird, hergestellt.

gruß, Philos
((2*b) || !(to_be)) ... that's the question.

Francine1989
Beiträge: 3
Registriert: Mi 7. Mai 2014, 11:55

Re: wechselnde Formularseiten

Beitrag von Francine1989 »

Aaah, perfekt. Danke euch beiden. Die einfachere Variante ist die von Philos. Das reicht mir. Das ist ja echt easy, aber das muss man aber auch erstmal wissen so als Neuling :D

Benutzeravatar
theo
Beiträge: 10867
Registriert: Mo 11. Sep 2006, 19:01

Re: wechselnde Formularseiten

Beitrag von theo »

Francine1989 hat geschrieben:Die einfachere Variante ist die von Philos.
Nein, das ist die aufwändige Variante. ;-)
Mit dem PageControl musst du nicht jedes einzelne Element ein- und auschalten, sondern kannst einfach die Seite wechseln.

Francine1989
Beiträge: 3
Registriert: Mi 7. Mai 2014, 11:55

Re: wechselnde Formularseiten

Beitrag von Francine1989 »

theo hat geschrieben:
Francine1989 hat geschrieben:Die einfachere Variante ist die von Philos.
Nein, das ist die aufwändige Variante. ;-)
Mit dem PageControl musst du nicht jedes einzelne Element ein- und auschalten, sondern kannst einfach die Seite wechseln.
Aber in meinem Fall musste ich nur ein einzelnes Element einschalten, und schon funktionierte es ;-)

Michl
Beiträge: 2511
Registriert: Di 19. Jun 2012, 12:54

Re: [gelöst] wechselnde Formularseiten

Beitrag von Michl »

In diesem Fall würde ich ebenfalls Theos Ratschlag unterstützen. Sämtliches Aus- und Einschalten der .visible würden mit dem TPageControl (oder wenn Du die Reiter nicht sehen willst, TNoteBook) für Dich entfallen...

Code: Alles auswählen

type
  TLiveSelection = (lsMoney, lsChilds, lsTime);
  TLive = Array[0..1] of TLiveSelection;  

Philos
Beiträge: 43
Registriert: Mo 3. Mär 2014, 16:06
OS, Lazarus, FPC: Ubuntu Linux 14.04, Windows 7/8, Lazarus 1.2.2, Delphi XE5
CPU-Target: amd64
Wohnort: Rostock
Kontaktdaten:

Re: [gelöst] wechselnde Formularseiten

Beitrag von Philos »

Also die bessere Methode ist definitiv theo's. Aber ich wollte einfach dafür sorgen, dass auf die Frage, so wie sie gestellt wurde, auch zumindest eingegangen wird ;) Ansonsten sind PageControl und Notebook natürlich vorzuziehen.
((2*b) || !(to_be)) ... that's the question.

Antworten