R
Roger
Hallo zusammen
Ich schreibe gerade eine Anwendung mit wxWidgets unter Linux Karmic, CodeBlocks und wxSmith.
Ich kann das Haupt-wxFrame sichtbar machen und auch Dialoge öffnen klappt super.
Problem:
Ich möchte ein zweites wxFrame sichtbar machen, weil ich eine weitgehend Full-Screen-Anwendung schreiben möchte.
(Optionen oder Suchen können schon Dialoge sein, das Meiste sollte aber Full-Screen- wxFrames sein).
Ich kann das Haupt-wxFrame mit this->Maximize(); maximieren, doch die wxDialoge nicht.
Nun habe ich ein zweites wxFrame gemacht, doch ich schaffe es nicht, dass dieses sichtbar wird. Es sollte doch möglich
sein zwischen mehreren wxFrames "hin und her zu schalten".
Ich möchte bei Button-Click im Hauptframe ein zweites wxFrame aufmachen, das ich zuvor mit wsSmith gemacht habe:
--------------------------------------------------------
#include "NewFrame.h" // zweites wxFrame im HauptFrame.h eingebunden
--------------------------------------------------------
Code im HauptFrame.cpp:
void HauptFrame::OnBitmapButtonBeispielClick(wxCommandEvent& event)
{
NewFrame NewFrameFrame(this);
NewFrameFrame.Show();
this->Hide();
}
--------------------------------------------------------
Problem: Ich schaffe es nicht, dass das zweite Fenster sichtbar wird. Das Haupt-wxFrame wird zwar verborgen,
aber NewFrame wird nicht sichtbar. Ist dies ein Fehler von wxWidgets?
Es sollte doch klar sein:
NewFrameFrame.Show(); // = mach NewFrameFrame sichtbar
this->Hide(); // = mach HauptFrame unsichtbar
Bei einem Dialog funktioniert es problemlos:
Mit: CustomerSearchDlg.ShowModal(); wird ein Dialog sichtbar.
Aber warum funktioniert das nicht so bei einem zweiten wxFrame oder wie schaffe ich es, ein zweites wxFrame sichtbar und das
Haput-wxFrame unsichtbar zu machen? Wenn das zweite wxFrame (NewFrameFrame) geschlossen wird sollte das
Haupt-wxFrame (HauptFrame) natürlich wieder sichtbar werden.
Kann mir jemand helfen?
Ich schreibe gerade eine Anwendung mit wxWidgets unter Linux Karmic, CodeBlocks und wxSmith.
Ich kann das Haupt-wxFrame sichtbar machen und auch Dialoge öffnen klappt super.
Problem:
Ich möchte ein zweites wxFrame sichtbar machen, weil ich eine weitgehend Full-Screen-Anwendung schreiben möchte.
(Optionen oder Suchen können schon Dialoge sein, das Meiste sollte aber Full-Screen- wxFrames sein).
Ich kann das Haupt-wxFrame mit this->Maximize(); maximieren, doch die wxDialoge nicht.
Nun habe ich ein zweites wxFrame gemacht, doch ich schaffe es nicht, dass dieses sichtbar wird. Es sollte doch möglich
sein zwischen mehreren wxFrames "hin und her zu schalten".
Ich möchte bei Button-Click im Hauptframe ein zweites wxFrame aufmachen, das ich zuvor mit wsSmith gemacht habe:
--------------------------------------------------------
#include "NewFrame.h" // zweites wxFrame im HauptFrame.h eingebunden
--------------------------------------------------------
Code im HauptFrame.cpp:
void HauptFrame::OnBitmapButtonBeispielClick(wxCommandEvent& event)
{
NewFrame NewFrameFrame(this);
NewFrameFrame.Show();
this->Hide();
}
--------------------------------------------------------
Problem: Ich schaffe es nicht, dass das zweite Fenster sichtbar wird. Das Haupt-wxFrame wird zwar verborgen,
aber NewFrame wird nicht sichtbar. Ist dies ein Fehler von wxWidgets?
Es sollte doch klar sein:
NewFrameFrame.Show(); // = mach NewFrameFrame sichtbar
this->Hide(); // = mach HauptFrame unsichtbar
Bei einem Dialog funktioniert es problemlos:
Mit: CustomerSearchDlg.ShowModal(); wird ein Dialog sichtbar.
Aber warum funktioniert das nicht so bei einem zweiten wxFrame oder wie schaffe ich es, ein zweites wxFrame sichtbar und das
Haput-wxFrame unsichtbar zu machen? Wenn das zweite wxFrame (NewFrameFrame) geschlossen wird sollte das
Haupt-wxFrame (HauptFrame) natürlich wieder sichtbar werden.
Kann mir jemand helfen?