wxWidgets: Fragen zu wxWizardPage und wxSizer
-
Hi!
Hat jemand Erfahrung mit wxWidgets. Ich versuche verzweifelt mit dem GUI einen Wizard zu programmieren. Leider bekomme ich das Layout einfach nicht hin. Bei der Einordnung des Beitrag in die ensprechende Rubrik des Forums war ich mir unsicher. wxWidgets ist ja eine GUI für mehrer Bestriebsysteme. Daher hat das irgendwie nirgends so ganz reingepasst und eine Standardbibliothek ist es ja auch nicht.
---
Hier in dem Screenshot habe ich die Problem eingezeichnet. So lassen sich meine Fragen/Probleme am besten nachvollziehen. Leider lassen sich im Forum keine Bilder direkt einfügen. Der Screenshot ist aber zum Verstehen der Layout-Schwierigkeiten auf jeden notwendig.
http://teambuying.de/wizard.png
---
Meine Fragen
- Wie kann ich oben in der linken Ecke der Titelleiste das Programmicon aziegne lassen?
- Wie kann ich in der rechten Ecke der Titelleiste den Minimieren- und Maximieren-Button anzeigen lassen?
- Warum ist der StaticText mit dem Titel nicht auf der selben Höhe wie das Bild? Wie kann ich das ändern?
- Wie kann ich verhindern, dass der Text der StaticTexts (Titel und Untertitel) abgeschnitten wird?
- Wie kann ich das rechte Logo ganz in die obere rechte Ecke verschieben.
- Wie kann ich die unteren drei Buttons eindeutschen, also den Text ändern?
---
Ich weiß, dass ich viele Frage habe. Leider komme ich aber weder mit den engl. Dokumention auf der Webseite von wxWidgets weiter noch habe ich mit Google etwas gefunden. Vom Funktionsumfang her is wxWidgets genial. Leider gibt es hier zu fast keine Tutorials und kein einziges Buch. Wenn jemand die eine oder andere Frage beantworten kann, würde ich mich freuen. Schon jetzt vielen Dank
---
class wxDefauftPage : public wxWizardPageSimple { public: wxDefauftPage(wxWizard *parent) : wxWizardPageSimple(parent) { wxGridSizer *wxSizerHaupt = new wxGridSizer(1, 1, 0, 0); wxFlexGridSizer *wxSizerBild = new wxFlexGridSizer(1, 2, 0, 0); wxFlexGridSizer *wxSizerLeiste = new wxFlexGridSizer(2, 1, 0, 0); wxFlexGridSizer *wxSizerDaten = new wxFlexGridSizer(1, 1, 0, 0); wxFlexGridSizer *wxSizerLogo = new wxFlexGridSizer(1, 2, 0, 0); wxFlexGridSizer *wxSizerTitel = new wxFlexGridSizer(2, 1, 0, 0); wxStaticText *wxLabelTitel = new wxStaticText(this, -1, wxT("Titel"), wxPoint(0, 0), wxDefaultSize, wxNO_BORDER); wxLabelTitel->SetFont(wxFont()); wxStaticText *wxLabelUntertitel = new wxStaticText(this, -1, wxT("Untertitel"), wxPoint(0, 0), wxDefaultSize, wxNO_BORDER); wxLabelUntertitel->SetFont(wxFont()); wxStaticBitmap *wxBitmapLogo = new wxStaticBitmap(this, -1, wxBITMAP(smallbmp), wxPoint(0, 0), wxDefaultSize, wxNO_BORDER); wxStaticBitmap *wxBitmapBild = new wxStaticBitmap(this, -1, wxBITMAP(bigbmp), wxPoint(0, 0), wxDefaultSize, wxNO_BORDER); wxSizerHaupt->Add(wxSizerBild, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND, 0); wxSizerBild->Add(wxBitmapBild, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT, 0); wxSizerBild->Add(wxSizerLeiste, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND, 0); wxSizerLeiste->Add(wxSizerDaten, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND, 0); wxSizerLeiste->Add(wxSizerLogo, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT, 0); wxSizerLogo->Add(wxSizerTitel, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxEXPAND, 0); wxSizerLogo->Add(wxBitmapLogo, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT|wxALIGN_LEFT, 0); wxSizerTitel->Add(wxLabelTitel, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT, 0); wxSizerTitel->Add(wxLabelUntertitel, 0, wxTOP|wxLEFT|wxBOTTOM|wxRIGHT, 0); SetSizer(wxSizerHaupt); SetAutoLayout(true); Layout(); Refresh(); } };
Viele Grüße
pmw
-
Dieser Thread wurde von Moderator/in davie aus dem Forum C++ in das Forum Rund um die Programmierung verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.