【发布时间】:2016-09-21 20:28:59
【问题描述】:
我在 tkinter 的框架中嵌入了一个 pygame 窗口。在另一个框架中,我有一个按钮,单击时会调用以下函数:
def setStart():
global start
# set start position
for event in pygame.event.get():
if event.type == pygame.MOUSEBUTTONUP:
start = event.pos
print("start",start)
break
我打算让程序在单击按钮后打印用户在 pygame 表面上单击的位置的位置。但是,在第一次单击按钮和随后单击 pygame 表面时,没有输出。在第二次点击按钮在相应的第二次点击pygame表面之前,python会打印出如下输出:
('开始', (166, 115))
我怎样才能让它在点击 pygame 表面后立即给我一个结果?当我有两个单独的 tkinter 和 pygame 窗口时,我遇到了同样的问题,因此将 pygame 嵌入 tkinter 不太可能是问题的原因。
编辑:经过进一步测试,如果按下按钮然后多次单击 pygame 表面,则在第二次单击按钮时,所有这些单击的坐标将作为批处理打印出来。
【问题讨论】:
标签: python python-2.7 tkinter pygame pygame-surface