Seite 1 von 1

Prob mit Tkinter beim ausführen in einer Datei unter Linux ?

Verfasst: Sonntag 20. Juli 2003, 00:53
von Blackfankie
hi,

Weiß jemand warum vollgendes nicht in einer Datei mit *py
funzt... beim ausführen unter einem xterm

#!/usr/bin/python

from Tkinter import *
root=Tk()
lab=Label(root,text="Viel Spass mit dem Tkinter-Tutorial")
lab.pack()

Geht kommischer weiße nur dierekt über IDEL, ohne Probs aber nicht wie schon gesagt über xterm ( also es geht kein Fenster auf ).

Weis jemand Rat ????

OS ist RH 8.0

MFG

Blackfankie

Verfasst: Sonntag 20. Juli 2003, 01:29
von Dookie
Hi Blackfankie,

Code: Alles auswählen

#!/usr/bin/python

from Tkinter import *
root=Tk()
lab=Label(root,text="Viel Spass mit dem Tkinter-Tutorial")
lab.pack() 

if not usingIDLE:
    root.mainloop()
Erklärung: IDLE läuft selber unter Tkinter im mainloop
Gruß

Dookie

Verfasst: Sonntag 20. Juli 2003, 02:09
von Blackfankie
ho,

funzt aber bei mir nicht... :-(

NameError: name 'usingIDLE' is not defined

MFG

Blackfankie

Verfasst: Sonntag 20. Juli 2003, 10:50
von hans
So geht's bei nir aber. (RH9)

Code: Alles auswählen

#!/usr/bin/python

from Tkinter import *
root=Tk()
lab=Label(root,text="Viel Spass mit dem Tkinter-Tutorial")
lab.pack()

# if not usingIDLE:
root.mainloop()
Bleibt die Frage, in welchem Modul wird usingIDLE definiert?

Hans

Verfasst: Sonntag 20. Juli 2003, 11:02
von Dookie
uuups, :oops:
ich hab es aus einem Beispiel auf meiner Platte, da wird usingIDLE extra definiert und mit 0 initialisiert.

also kann das if auch gelöscht werden und für die NichIDLEvariante das root.mainloop() direkt aufgerufen werden.


Gruß

Dookie

Verfasst: Sonntag 20. Juli 2003, 15:34
von Blackfankie
Ja, jetzt funzts

Thx :-)

MFG

Blackfankie

usingIDLE

Verfasst: Sonntag 20. Juli 2003, 22:54
von Qbi
hans hat geschrieben:Bleibt die Frage, in welchem Modul wird usingIDLE definiert?
AFAIK kam das erst ab V 2.3 dazu. Mehr kann ich auch nicht sagen ...

Re: usingIDLE

Verfasst: Montag 21. Juli 2003, 09:35
von hans
Qbi hat geschrieben:
hans hat geschrieben:AFAIK kam das erst ab V 2.3 dazu. Mehr kann ich auch nicht sagen ...
Und ich wundere mich, dass ich in der Onlinedoku (zu 2.2.2) nix finde :roll:

Hans

Re: usingIDLE

Verfasst: Montag 21. Juli 2003, 10:00
von Voges
Hallo!
hans hat geschrieben:Und ich wundere mich, dass ich in der Onlinedoku (zu 2.2.2) nix finde :roll:
Auch die Version 2.3 kennt usingIDLE nicht, zumindest nicht die letzte Betaversion. Die Verwendung von usingIDLE ist einfach nur ein Tipp, der im Internet kursiert, z.B. http://mail.python.org/pipermail/tutor/ ... 19140.html und wohl auch in irgendeinem Buch zu finden ist.

Wobei ich das Vorgehen noch nicht mal besonders elegant finde, da man immer usingIDLE von Hand setzen muss. Ich würde eher IDLE mit -c "usingIDLE=1" aufrufen (verpackt in einer Patchdatei bzw. einem Script), und im Pythonscript dann sowas machen wie

Code: Alles auswählen

try: usingIDLE
except NameError: root.mainloop()
Jan