Hallo.
Wie kann ich mein Fenster in den Vollbild-Modus, dh. so dass man keine anderen Fenster mehr sieht, versetzen?
Fenster in Vollbild versetzen (MDI)
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi sprudel!sprudel hat geschrieben:Wie kann ich mein Fenster in den Vollbild-Modus, dh. so dass man keine anderen Fenster mehr sieht, versetzen?
Das hat aber nichts mit MDI zu tun. Mit ``myframe.Maximize(True)`` wird ein Fenster maximiert.
Beim Anzeigen des Frames kannst du statt ``myframe.Show()`` auch ``wx.Frame.ShowFullScreen()`` verwenden. Das Verhalten kann man dabei mit dem style-Parameter verändern.
Siehe: http://wxwidgets.org/manuals/stable/wx_ ... fullscreen
Anwendungsintern kannst du das Fenster auch mit ``myframe.MakeModal()`` in den Vordergrund stellen. Siehe: http://wxwidgets.org/manuals/stable/wx_ ... wmakemodal
Automatisch in den Vordergrund: http://www.python-forum.de/topic-8682.html
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
http://wxwidgets.org/manuals/stable/wx_ ... fullscreensprudel hat geschrieben:Ist es dann auch möglich, dass in dem Vollbild-Fenster auch die Menüleiste und die Statusbar angezeigt werden?
Zur Not im Browser noch einmal "Aktualisieren" klicken.
Folge meinen Links, folge meinen Links, folge meinen L...
http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Dieses Ding, wo bei dir in der Titelleiste Internet Explorer oder FIrefox, oder Safari, oder Konqueror steht ist der Browser. Du musst also auf den Link klicken, dann um Browser den Aktualisieren-Link klicken (manchmal reicht das drücken der [F5]-Taste, je mach Browser) und dann kannst du lesen was in der Dokumentation steht.sprudel hat geschrieben:Was meinst du mit Browser und "Aktualisieren" ???
SCNR.

Aber warum man aktualisieren sollte, dass muss gerold uns beiden noch erklären, ich sehe da nämlich im Moment auch keinen Sinn darin.
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Leonidas hat geschrieben:Dieses Ding, wo bei dir in der Titelleiste Internet Explorer oder FIrefox, oder Safari, oder Konqueror steht ist der Browser. Du musst also auf den Link klicken, dann um Browser den Aktualisieren-Link klicken (manchmal reicht das drücken der [F5]-Taste, je mach Browser) und dann kannst du lesen was in der Dokumentation steht.sprudel hat geschrieben:Was meinst du mit Browser und "Aktualisieren" ???
SCNR.
Aber warum man aktualisieren sollte, dass muss gerold uns beiden noch erklären, ich sehe da nämlich im Moment auch keinen Sinn darin.
Mir ist schon klar was ein Browser ist, und auch was Aktualisieren ist

- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi euch beiden!Leonidas hat geschrieben:Aber warum man aktualisieren sollte, dass muss gerold uns beiden noch erklären
Ich hatte den Link schon vorher gepostet. Dieser Link zeigt zur Erklärung von "wxTopLevelWindow::ShowFullScreen". In dieser Erklärung wird genau das erklärt, was mich sprudel danach noch einmal gefragt hat. Also dachte ich mir, dass es, wie schon öfter bei mir (Firefox; Windows) der Fall war, möglich ist, dass der Firefox nicht korrekt zum besagten Anker-Tag der HTML-Seite gesprungen ist. Wenn die Seite aber vollständig geladen wurde und dann noch einmal F5 gedrückt wird, dann springt der Firefox genau da hin wo er hin soll -- nämlich zum Anker-Tag "#wxtoplevelwindowshowfullscreen".

lg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Da haben wir dich ja wohl komplett falsch verstanden 
Hab jetzt folgendes Problem:
class Menu(wx.MDIChildFrame):
def __init__(klasse,parent):
klasse.parent = parent
wx.MDIChildFrame.__init__(klasse,parent,-1,title="Hauptmenü")
klasse.SetBackgroundColour(MAINMENUCOLOR)
klasse.ShowFullScreen(True)
klasse.Bars()
klasse.Menu()
klasse.Refresh() #Ein Refresh kann nie schaden
Statusbar wird angezeigt, Menüleiste nicht. Wenn ich aber nur klasse.Show(True) mache, dann wird die Menüleiste im parent angezeigt.
Ich mache es aber ausdrücklich so:
klasse.SetMenuBar(klasse.menu)
klasse.statusbar = wx.StatusBar(klasse)
klasse.statusbar.SetFieldsCount(3)
klasse.statusbar.SetStatusWidths([-1,-2,-1])
klasse.SetStatusBar(klasse.statusbar)
Was stimmt daran nicht?

Hab jetzt folgendes Problem:
class Menu(wx.MDIChildFrame):
def __init__(klasse,parent):
klasse.parent = parent
wx.MDIChildFrame.__init__(klasse,parent,-1,title="Hauptmenü")
klasse.SetBackgroundColour(MAINMENUCOLOR)
klasse.ShowFullScreen(True)
klasse.Bars()
klasse.Menu()
klasse.Refresh() #Ein Refresh kann nie schaden

Statusbar wird angezeigt, Menüleiste nicht. Wenn ich aber nur klasse.Show(True) mache, dann wird die Menüleiste im parent angezeigt.
Ich mache es aber ausdrücklich so:
klasse.SetMenuBar(klasse.menu)
klasse.statusbar = wx.StatusBar(klasse)
klasse.statusbar.SetFieldsCount(3)
klasse.statusbar.SetStatusWidths([-1,-2,-1])
klasse.SetStatusBar(klasse.statusbar)
Was stimmt daran nicht?
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Hi sprudel!
Du zerrst an meinen Nerven. Ehrlich!
1. Ersetze "klasse" bitte durch "self". Eine Klasse ist keine Klasseninstanz und "self" ist üblich. So kennen sich andere Python-Programmierer aus, wenn sie deinen Code lesen. Jeder hält sich daran -- bitte du auch.
2. Was von dem Text in dem Link den ich dir gezeigt habe, verstehst du nicht? Hier noch ein Hinweis:
3. Ein MDIChildFrame hat nicht als Vollbild aufgerufen zu werden. Das ist gegen jedes Verständnis von "MDIParent" und "MDIChild". Ein MDI-Child hat innerhalb eines MDI-Parent-Fensters angezeigt zu werden. Und MDI funktioniert nur unter Windows. Du musst also sehr aufpassen und einiges ändern, wenn du dein Programm auch unter Linux und Mac laufen lassen willst.
4. Setze deinen Code in Code-Tags. (du kannst deine eigenen Beiträge mit einem Klick auf den Edit-Button nochmal bearbeiten) --> http://www.python-forum.de/faq.php#21
5. Der Klassenname "Menu" ist, meines Erachtens, zu schwach. Wie wäre es mit "MenuFrame"? Dann weiß man beim Lesen des Codes auch was passiert und muss nicht erst nachschauen was "Menu" überhaupt ist. (muss aber nicht sein)
mfg
Gerold

Du zerrst an meinen Nerven. Ehrlich!
1. Ersetze "klasse" bitte durch "self". Eine Klasse ist keine Klasseninstanz und "self" ist üblich. So kennen sich andere Python-Programmierer aus, wenn sie deinen Code lesen. Jeder hält sich daran -- bitte du auch.
2. Was von dem Text in dem Link den ich dir gezeigt habe, verstehst du nicht? Hier noch ein Hinweis:
Code: Alles auswählen
wx.FULLSCREEN_ALL ^ (wx.FULLSCREEN_NOMENUBAR | wx.FULLSCREEN_NOSTATUSBAR)
4. Setze deinen Code in Code-Tags. (du kannst deine eigenen Beiträge mit einem Klick auf den Edit-Button nochmal bearbeiten) --> http://www.python-forum.de/faq.php#21
5. Der Klassenname "Menu" ist, meines Erachtens, zu schwach. Wie wäre es mit "MenuFrame"? Dann weiß man beim Lesen des Codes auch was passiert und muss nicht erst nachschauen was "Menu" überhaupt ist. (muss aber nicht sein)
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Die beiden von wxWidgets unter Linux unterstützten Backends, wxMotif und wxGTK unterstützen beide kein MDI. Ich glaube Qt sollte sowas können, aber ich habe es auch noch die ein Qt-MDI-Fenster unter Linux gesehen.sprudel hat geschrieben:Die funktionieren nicht unter Linux?!
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
-
- Python-Forum Veteran
- Beiträge: 16025
- Registriert: Freitag 20. Juni 2003, 16:30
- Kontaktdaten:
Es gibt ganz einfach keine MDI-Windows mit wxPython unter Linux. Es gibt auch keinen Ersatz und es gibt dafür eigentlich auch nicht wirklich Bedarf. Das einzige MDI-App dass mir bleibend in Erinnerung geblieben ist, war Opera, aber die schwenken auch immer mehr zu Tabs um.sprudel hat geschrieben:Verwendet GTK dann etwas anderes, oder gibt es eine Fehlermeldung?
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
- gerold
- Python-Forum Veteran
- Beiträge: 5555
- Registriert: Samstag 28. Februar 2004, 22:04
- Wohnort: Oberhofen im Inntal (Tirol)
- Kontaktdaten:
Die Child-Fenster werden in einem Notebook angezeigt. Um die "Fenster" dann aber auch schließen zu können und direkt damit arbeiten zu können, musst du diesen "Fall" dann natürlich auch beim Programmieren bedenken.sprudel hat geschrieben:Verwendet GTK dann etwas anderes, oder gibt es eine Fehlermeldung?
Ich habe zum Testen ein Ubuntu 7.04 in einer VirtualBox laufen, damit ich dafür nicht immer neu booten muss. Ich muss aber auch zugeben, dass ich selten unter Linux teste, wenn ich weiß, dass der Kunde nur Windows hat und es sich nur um ein für den Kunden angepasstes Programm handelt.
mfg
Gerold

http://halvar.at | Kleiner Bascom AVR Kurs
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.
Wissen hat eine wunderbare Eigenschaft: Es verdoppelt sich, wenn man es teilt.