Erfassung von Daten in einem Eingabefenster
-
Hi zusammen,
ich hab mal wieder ein Problem und hoffe das Ihr mir weiter helfen könnt!
Mein Programm soll so gestalltet werden, das der Benutzter einige Daten
einzugeben hat. Die Eingabe soll aber nicht in einem einzigen Fenster statt
finden, so Soll er z. B. erst seinen Vor- und Nachnamen eingeben
dann im weiteren Schritt seine Adressanschrift und seine Telefonnummer:1. Abfrage
------------- Vorname | | ------------- ------------- Nachname | | ------------- |WEITER|2. Abfrage
------------- Adresse | | | | | | ------------- ------------- Telefon | | ------------- |ZURÜCK| |WEITER|Zum Aufbau:
Ich will ein Form1 in welchem beide Abfragen erfolgen.
So soll in einem einzigem Fenster erst die 1. Abfrage erfolgen
und wenn man dann auf den Button "WEITER" klickt, soll in dem
gleichem Fenster der Inhalt von der "1. Abfrage" 'gelöscht' werden
und der die 2. Abfrage erfolgen.
In Excel gibt es sowas auch, eine Abfrage von Datensätzen in einem Fenster
in welchen in einzelnen "Stepps" verschiedene Daten Abgefragt werden.
Oder von der Installation eines Programms kennt man das auch her, da öffnet
sich ein fenster, dann wird als erstes ein Copyrigt und weiteres sinnloses Zeugs
mitgeteilt, dann wenn man auf weiter klickt wird man nach dem Einferständnis
der Lizensbedingungen gefragt, als dritten schritt soll man dann seinen Namen
und seine Inizialen eingeben bla bla bla...Ihr wisst schon!ICH DANKE EUCH SCHON JETZT EINMAL FÜR EURE VORSCHLÄGE
P.S. mit mehreren Panels habe ich das schon mal ausprobiert,
da hab ich dann immer nur ein Panel auf Visible gestallt und die anderen
einfach ausgeblendet, dann wenn ich auf weiter geklickt hab,
hat sich das aktuelle Panel ausgeblendet und das nächste wurde eingeblendet.
Aber wenn man dann viele Datensätze abfragen will, wird das ganz schön unübersichtlich. Da muss es doch was besseres geben oder nicht?
Hier einmal der Quellcode zu meinen Vorstellungen aber mit Panels://--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "Unit1.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TForm1 *Form1; AnsiString E1, E2; //--------------------------------------------------------------------------- __fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Button4Click(TObject *Sender) { Panel1->Visible = true; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button2Click(TObject *Sender) { Panel1->Visible = false; Panel2->Visible = true; E1 = Edit3->Text; } //--------------------------------------------------------------------------- void __fastcall TForm1::Button3Click(TObject *Sender) { Panel2->Visible = false; E2 = Edit4->Text; if((E1 != "") && (E2 != "")) { Edit1->Text = E1; Edit2->Text = E2; } else { } } //--------------------------------------------------------------------------- void __fastcall TForm1::Button5Click(TObject *Sender) { Panel2->Visible = false; Panel1->Visible = true; } //--------------------------------------------------------------------------- void __fastcall TForm1::FormCreate(TObject *Sender) { } //--------------------------------------------------------------------------- void __fastcall TForm1::Timer1Timer(TObject *Sender) { Form1->Label1->Caption = Label1->Caption; } //---------------------------------------------------------------------------
-
also so vom prinzip ist es geschmackssache. aber ich als user mag so arten der eingabe nicht. ich hab gerne die ganze maske vor mir ( ok ausser es ist eine scien. tology fragebogen, der sehr gross ist, und eh in den mülleimer landet ). so immer nur häppchenweise was vorgesetzt bekommen, wo am schluss nach 5 min, irgendwelche "perversen" sachen gefragt werden ist nicht mein ding.
aber nun gut
also eine möglichkeit wäre.
2 statictextfelder
2 eingabeboxen
weiter button und ein disable back button
und eine BOOL oder short int variable zum beispiel ( ne flag variable halt )wenn er am anfang ist
ist back button disable. und die BOOL oder short int auf 0 zum bsp.
dann gibt er seine 2 daten ein
und klickt auf weiterim weiterbutton code
wird die eine flag variable++ gemacht
und dann ein switch
und wenn halt der flag 0 ist
heisst es
1.eingbabefeld wird der vorname gespeichert ( wenn flag 1 ist dann wird der wert in strasse zum bsp gespeichert )
2. der nachname
das disable beim back wird rausgemacht
und die 2 statctextfelder gekommen anderen wert ( sprich anderen text. z.b. strasse oder so )
bei back wird die falgvariable-- gemachtusw
so wird halt alles in einem weiterbutton code fkt gemacht über ein switch zum bsp
also viel spass beim coden, so schwer ist es nun wirklich nicht.
-
achja was mir aufgefallen ist: bitte nimm nicht die vorgeschlagenen variablennamen. ist zwar prog. techn. egal, aber ich kann bei sowas kopfschmerzen bekommen
und du auch, wenn das projekt grösser wird und du musst mal in einem jahr codepflege machen
-
Das ist VCL und kein MFC ! -> Falsches Forum also.
Devil