Anwendung auf Mac: Fenster mit stdout öffnet sich gleichzeit

Plattformunabhängige GUIs mit wxWidgets.
Antworten
TiKaey
User
Beiträge: 84
Registriert: Montag 24. November 2008, 20:48

Hi,

ich habe einen Bekannten, der meinen "Player" mal ausprobieren möchte auf seinem Mac.
Wir haben es hinbekommen, ihn zu starten, aber es öffnet sich gleichzeitig ein Fenster mit dem Titel "wxPython: stdout/stderr"
Es ist keine Fehlermeldung, es werden die Daten angezeigt von der Datei, die eingelesen wird beim Öffnen (Gespeicherter Benutzername etc).
Kann man diese Ausgabe irgendwie unterdrücken? Das passiert nur auf dem Mac, und ich habe quasi Null Ahnung vom Mac, und mein Bekannter ist gerade selbst Einsteiger.
BlackJack

Du gibst die Daten nicht zufällig irgendwo mit ``print`` aus!?
TiKaey
User
Beiträge: 84
Registriert: Montag 24. November 2008, 20:48

AUAAAAAAA

Ja, das war's. Der war noch in einer Version, wo ich die noch zur Kontrolle ausgegeben habe, und so hat mich die Anzeige irritiert. *g*

Ihr dürft mich schlagen. *g*
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Das Verhalten lässt sich aber afair auch irgendwie deaktivieren...
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
TiKaey
User
Beiträge: 84
Registriert: Montag 24. November 2008, 20:48

In diesem Fall ist es nicht mehr nötig. Aber bei Linux kommen die Ausgaben in dem Terminalfenster, in dem man es startet, und nicht in einem extra Fenster, daher hatte mich das verwirrt. :o)
Und ich denke mal, irgendwo müssen diese Angaben ja kommen. Mac scheint sie auf ein extra Fenster zu schicken.
Benutzeravatar
str1442
User
Beiträge: 520
Registriert: Samstag 31. Mai 2008, 21:13

wxPython leitet stdout und stderr um und fängt alle Versuche, darauf zu schreiben, ab. Das Fenster welches du gesehen hast poppt dann standardmässig auf. Kann man mit dem Parameter redirect der __init__ deiner App Klasse abschalten.
Leonidas
Python-Forum Veteran
Beiträge: 16025
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

TiKaey hat geschrieben:Aber bei Linux kommen die Ausgaben in dem Terminalfenster, in dem man es startet, und nicht in einem extra Fenster, daher hatte mich das verwirrt. :o)
Das liegt afair daran, dass Windows hart zwischen GUI-Applikationen und nicht-GUI-Applikationen unterscheidet. Bei GUI-Applikationen ist es nicht möglich auf die Konsole zu schreiben, nicht-GUI-Applikationen hingegen öffnen bei jedem Programmstart ein "DOS-Fenster", egal ob es nötig ist oder nicht (außer man startet sie aus der Konsole, logischerweise).
My god, it's full of CARs! | Leonidasvoice vs (former) Modvoice
Benutzeravatar
Rebecca
User
Beiträge: 1662
Registriert: Freitag 3. Februar 2006, 12:28
Wohnort: DN, Heimat: HB
Kontaktdaten:

Unter Windows kann man dem Script die Endung .pyw geben, dann gibt's kein DOS-Fenster, aber der OP fragte nach MAC, k.A....
Offizielles Python-Tutorial (Deutsche Version)

Urheberrecht, Datenschutz, Informationsfreiheit: Piratenpartei
TiKaey
User
Beiträge: 84
Registriert: Montag 24. November 2008, 20:48

Rebecca hat geschrieben:Unter Windows kann man dem Script die Endung .pyw geben, dann gibt's kein DOS-Fenster, aber der OP fragte nach MAC, k.A....
Das Problem ist ja auch schon gelöst. Es war schlichtweg so, dass eine Ausgabe erzeugt wurde durch ein paar "print" im Code, die ich vergessen hatte.
Antworten