2013-08-24 2 views
0

У меня есть очень простой вопрос, связанный с Python 3. Я начал изучать Python, но некоторые вещи меня путают.tkinter с mac osx

Во-первых, поскольку я хочу создать скрипт python, являющийся графическим интерфейсом, я импортировал модуль tkinter. Код работает в IDLE, но никогда не работает, когда я запускаю его с терминала. Всякий раз, когда я запускаю скрипт из терминала, я вижу эту ошибку обратного прослеживания:

Traceback (most recent call last): 
    File "test1.py", line 9, in <module> 
    mGui.geometry("geometry 480x480") 
    File "/Library/Frameworks/Python.framework/Versions/3.3/lib/python3.3/tkinter/ 
__init__.py", line 1607, in wm_geometry 
    return self.tk.call('wm', 'geometry', self._w, newGeometry) 
_tkinter.TclError: bad geometry specifier "geometry 480x480" 

В общем, что я пытаюсь сделать, это создать сценарий Python GUI, сохраните его, и выполнить его через свой терминал, когда мне это нужно ,

Вот код:

#!/usr/bin/env python3 

import sys 
from tkinter import * 



mGui =Tk("") 
mGui.geometry("geometry 480x480") 
mGui.title("Leilani spelling test") 

ответ

1

Вы не добавить слово «геометрия» аргументу метода geometry. Попробуйте вместо этого:

#!/usr/bin/env python3 

import sys 
from tkinter import * 

mGui =Tk("") 
mGui.geometry("480x480") 
mGui.title("Leilani spelling test") 
# You'll want to add this to enter the event loop that causes the window to be shown 
mGui.mainloop() 

Вот некоторые другие конфигурации GUI, которые могут потребоваться в будущем (я лично были проблемы с поиском/претендуете всю информацию):

mGui.overrideredirect(1) # Remove shadow & drag bar. Note: Must be used before wm calls otherwise these will be removed. 
mGui.call("wm", "attributes", ".", "-topmost", "true") # Always keep window on top of others 
mGui.geometry("100x100+500+500") # Set offset from top-left corner of screen as well as size 
mGui.call("wm", "attributes", ".", "-transparent", "true") # Remove shadow from window 
mGui.call("wm", "attributes", ".", "-fullscreen", "true") # Fullscreen mode 
mGui.call("wm", "attributes", ".", "-alpha", "0.9") # Window Opacity 0.0-1.0 
+0

@ Matt Я добавил новую линию к моему ответу. Похоже, что вам не хватало вызова 'mainloop' – SethMMorton

+0

Удивительно, что вы его исправили !!!! – Matt

Смежные вопросы