如何制作一个等待用户响应的对话框?

2 投票
1 回答
2237 浏览
提问于 2025-04-15 20:54

当你使用 tkSimpleDialog.askinteger 时,程序会停下来,等着用户输入。这让我想知道,怎么写一个自己的方法,也能达到同样的效果。我想做一个类似的对话框,只是想要请求更多的信息。 我遇到的问题是,当我用 Tk.Toplevel 打开一个新窗口时,程序并不会像 tkSimpleDialog.askinteger 那样停下来等用户输入。

1 个回答

0

首先,如果你能使用其他的界面库,比如PyGtk或者PyQt,那你真的应该考虑一下。Tkinter已经很老了,而新的库功能更多(也就是说,你不需要重新发明轮子)。我用过PyGtk,觉得比Tkinter好很多,毕竟我在老版本的Python 1.x时代就用过Tkinter。

话说回来,在Tkinter中,你需要这样做:

widget.wait_window(window)

这段代码会让程序停下来,等待用户关闭对话框。

参考链接:http://www.pythonware.com/library/tkinter/introduction/dialog-windows.htm

撰写回答