一个窗体应用,有一个 button btn = tk.Button(frm_r, text='hit', command=hit).pack()
hit 函数为:
def hit():
print('h')
main_board[4][4].create_image(3, 3, anchor='nw', image=led['yellow']) # 在窗体的某个 canvas 上加载图像
tk.messagebox.showinfo(title='ff', message='mm')
print('hhh')
当我单击 btn 时,控制台先打印出了'h',然后并没有执行 main_board[4][4].create_image(3, 3, anchor='nw', image=led['yellow'])
这一句代码,而是直接跳出 messagebox,同时 btn 保持着被点击的状态,当我关掉 messagebox 之后,create_image 才执行,然后控制台打印出'hhh'
我的问题是想让这个代码按顺序执行(先执行 create_image 再执行 messagebox ),想请教一下应该怎么调整,或者是我哪里理解有错误? Google 无果,求助各位 V 站大神( python 版本 3.7 和 3.8 都已经尝试过了,结果一样)
1
mcoo1997 2020-12-05 10:38:15 +08:00 via Android 1
实际上已经执行了 还没来得及刷新界面就执行下一个了
|
2
mcoo1997 2020-12-05 10:39:09 +08:00 via Android
不太确定 time.sleep 是否有用 你可以试试
|