graphics.py GraphWin自动关闭

时间:2014-04-10 16:24:06

标签: python python-3.x

我是Python的新手,并试图用John Zelle的graphics.py来学习图形。我正在MacVim上编写Python脚本并在Python 3上从终端(Mac OS 10.9.2)执行。如果我尝试用GraphWin()打开一个新窗口,窗口会短暂打开,然后立即关闭。

例如:

from graphics import *

win = GraphWin("circle",500,500)

c = Circle(point(100,100),30)

c.draw(win)

使用TkInter的GUI元素工作得很好。 任何想法为什么会这样?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果您在问题中显示的语句是作为脚本输入的,并且您只是运行了脚本,那么问题是当脚本结束时窗口会被隐式关闭。您将在documentation的第一个示例中看到(它也出现在graphics.py本身的源代码中):

from graphics import *

def main():
    win = GraphWin("My Circle", 100, 100)
    c = Circle(Point(50,50), 10)
    c.draw(win)
    win.getMouse() # Pause to view result
    win.close()

main()

请注意,作者在关闭窗口之前已经明确包含了要暂停的语句。

如果您只是在交互式Python提示符下逐个键入语句而不是脚本,那么只要该Python提示符处于打开状态,图形窗口就会保持打开状态(直到您明确关闭它或关闭它Python会话)。