GUI-App ohne konsole

Fragen zu Tkinter.
.papaya
User
Beiträge: 11
Registriert: Sonntag 27. August 2006, 18:41

GUI-App ohne konsole

Beitragvon .papaya » Montag 13. April 2009, 21:52

Hallo,

ich habe ein Programm mit python und tkinter (unter windows) fertiggestellt, jetzt stellt sich mir nur eine Frage: immer wenn man das Programm startet, oeffnet sich im Hintergrund auch eine Konsole. kann man das unterbinden?

sorry, wenn das schon oefters kam.
lunar

Beitragvon lunar » Montag 13. April 2009, 23:08

Falls du mit "Starten" einen Doppelklick auf die Python-Datei meinst, so hilft es, der Datei anstelle die Endung ".pyw" anstelle von ".py" zu geben.

Bei einem Start über die Eingabeaufforderung besteht die Lösung darin, "pythonw" anstelle von "python" zur Ausführung des Skripts zu nutzen.
The Spirit
User
Beiträge: 274
Registriert: Freitag 8. Juni 2007, 08:50
Wohnort: 84xxx Bereich
Kontaktdaten:

Beitragvon The Spirit » Dienstag 14. April 2009, 08:37

hi.
hatte das gleiche "problem".
wenn ich die datei mittels "pythonw" starte klappt es.
benenne ich die dateiendung jedoch von .py auf .pyw um, dann geht nix.
muss ich da noch was in die path variable von windows schreiben?
thx
Benutzeravatar
HerrHagen
User
Beiträge: 430
Registriert: Freitag 6. Juni 2008, 19:07

Beitragvon HerrHagen » Dienstag 14. April 2009, 09:11

Nein. Du musst nur eine entsprechende Verknüpfung der Endung .pyw mit pythonw.exe haben, dann sollte es funktionieren. Dies wird von der Standard Windows-Installation von Python normalerweise schon erledigt. Schau dir mal die Einstellungen an - vieleicht ist da irgendwas fehlerhaft? Ansonsten hast du vieleicht einen Fehler in deinem Python Programm den du ohne Konsolenausgabe nicht mitbekommst.

MFG HerrHagen
.papaya
User
Beiträge: 11
Registriert: Sonntag 27. August 2006, 18:41

Beitragvon .papaya » Dienstag 14. April 2009, 10:59

das war ja einfach. vielen dank :)
.papaya
User
Beiträge: 11
Registriert: Sonntag 27. August 2006, 18:41

Beitragvon .papaya » Dienstag 14. April 2009, 21:32

ich stelle eine weitere Frage hier, damit ich keinen neuen Thread aufmachen muss:

es passiert manchmal, dass sich mein Programm "scheinbar" aufhaengt. Das sieht dann so aus:

Bild

Das Programm arbeitet aber weiter und beendet auch nach einiger Zeit seine Arbeit. Allerdings will ich nicht, dass der User denkt, dass sich das Programm aufgehaengt hat. Weiß jemand woran das liegt und wie man das beheben kann?
lunar

Beitragvon lunar » Dienstag 14. April 2009, 22:04

Daran, dass eine längere Berechnung oder eine blockierende E/A-Operation in der Hauptschleife der Anwendung (z.B. in einer Methode, die auf ein GUI-Ereignis wie die Betätigung eines Knopfes reagiert) durchgeführt wird. Derartige Aufgabe müssen – zumindest bei Tk – in einen Hintergrundthread verschoben, oder in kleinere Arbeitsschritte unterteilt werden, mittels ".after()" Schritt für Schritt abgearbeitet werden.

Du bist allerdings nicht der erste, der sich mit diesem "Problem" konfrontiert sieht, eine Suche im Tkinter-Forum sollte dir eine Vielzahl von Threads liefern, die dein Problem thematisieren.
.papaya
User
Beiträge: 11
Registriert: Sonntag 27. August 2006, 18:41

Beitragvon .papaya » Dienstag 14. April 2009, 22:17

danke, werd mal suchen und ausprobieren. falls was nicht klappt melde ich mich nochmal.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder