Wie bekomme ich alle C++ Seiten in ein Programm ? Anfängerfrage
-
Hi,
ich bin Anfägner und bin gerde dran eine kleine Software zu entwickeln.
Nun habe ich aber eine entscheidende Frage, wie bekomme ich denn die verschiedenen C++ Aktionen und Formulare auf ein Design ?
Ich hatte bislang für jede Anwendung eine eigene Form und nun möchte ich alle Formen in als ein Programm vereinen. Sprich oben wie bei jedem Programm Das Datei - Bearbeiten usw. Zeugs und je nach Aktion soll sich der Rest des Formulars anpassen. Ich denke da so ähnlich wie eine HTML Framelösung müsste es aussehen, wo man eine Navigation hat und wenn sich der Inhalt der Seite ändern soll wird diese Seite einfach neu geladen. Wie stell ich das denn in Borland an ? Ich kann ja nicht jedes Fenster neu aufspringen und sich wieder schließen lassen, das sieht erstens ja schlecht aus und kann ja auch keine lösung sein. alles auf eine form zu packen und auszublenden ist wohl auch nicht die feine englische art aber ich weis leider auch nicht wie ich es anstellen sollich hoffe ihr wisst was ich meine und könnt mir etwas weiterhelfen ....
gruß binary
p.s. falls ihrgendwas unklar sein sollte bitte einfach posten.
danke
-
Also so ganz richtig klar ist mir zwar nicht, was du meinst, aber warum hast du denn für jede Aktion eine eigene Anwendung gestartet. Du kannst doch viele Aktionen in eine Anwendung packen.
Die einzelnen Fenster musst du halt dann so erstellen, dass sie deinen Anforderungen entsprechen. Du kannst ja auch Fenster aufrufen...Ich hoffe dir etwas geholfen zu haben.
-
ich meine z.b. das oben das Datei - Bearbeiten Zeugs steht und darunter sollen z.b. 3 fenster db insert, db edit und db delete angezeigt werden.
jedes dieser 3 fenster hat unterschiedliche textfelder und buttons und aktionen. da aber ja alles wie bei eigentlich jeder anwendung in einem fenster ablaufen soll weis ich nicht wie ich das anstellen soll
wie würdest du da jetzt vorgehen ? packst du jede anwendung auf ein formular und lädst es dann oder wie macht man denn das ? vorallem soll ja oben das Datei - Bearbeiten bleiben ...
-
Das kannst du ganz leicht mit Frames erreichen. ICh weiß nicht wie das jetzt im deutschen BCB heißt.
Symbolleiste (Komponente): Standard. 2. Icon von links.
-
aha frames heißt also das zauberwort.
weis zwar noch nicht wie ich das anstelle aber werd mir dann dazu ein paar infos besorgen ...oder hast du ein paar gute links was das angeht ?
-
Ist ganz easy, erstmal mußt du auf Datei->Neu->Frames benutzen.
//--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include "FormMain.h" //--------------------------------------------------------------------------- #pragma package(smart_init) #pragma resource "*.dfm" TfrmMain *frmMain; TFrameApacheMain *ApacheMain; TFrameApacheVirtualHosts *ApacheVirtualHosts; //--------------------------------------------------------------------------- __fastcall TfrmMain::TfrmMain(TComponent* Owner) : TForm(Owner) { Caption = Application->Title; ApacheMain = new TFrameApacheMain(Application); ApacheVirtualHosts = new TFrameApacheVirtualHosts(Application); ApacheMain->Parent = Panel1; ApacheVirtualHosts->Parent = Panel1; } //--------------------------------------------------------------------------- void __fastcall TfrmMain::OutBarApacheMainClick(TObject *Sender) { ApacheVirtualHosts->Visible = false; ApacheMain->Visible= true; } //--------------------------------------------------------------------------- void __fastcall TfrmMain::OutBarApacheVirtualHostsClick(TObject *Sender) { ApacheMain->Visible= false; ApacheVirtualHosts->Visible = true; } //---------------------------------------------------------------------------
So mach ich das.
ICh glaube man braucht nicht alle immer Visible true oder false setzen.
Glaube man wenn man einem ein Parent setzt ist er automatisch auf Visible = true
und beim Parent weg ziehen ist der wieder Visible = false.
Bin mir aber dabei nicht sicher. ICh habe lieber dies gemacht...
-
danke erstmal für deine antwort.
leider bin ich aber noch ein blutiger cpp anfänger kannst du mir denn oben stehenden code etwas erklären ? bitte bittewäre echt super nett !!!!
danke
----------------
ich wollte es bei mir so machen,
ich hab ein formular erzeugt wo oben ein panel und unten ein pannel ist.
dann hab ich über datei neue frame eine frame erzeugt und dort buttons usw. angebracht. damit form1 weis das es eine frame2 gibt habe ich also #include "Unit2.h" in meinen source angebracht. bei einer aktion sollte die frame2 im panel2 angezeigt werden und ich dachte ich mach das so:Frame2->Parent = Panel2;
Frame2->Visible = true;es kommt aber jedesmal die fehlermeldung das eine zugriffsverletzung aufgetretten ist :(((