在一个窗口中做多屏项目的最佳Python GUI模块是什么?
我不太确定怎么描述,所以我这里有一个简单的故事板,展示我想用Python做的事情:https://i.stack.imgur.com/dciMH.jpg
我对图形用户界面(GUI)编程还很陌生,所以不太确定哪个Python模块最适合这个项目。我稍微看了一下Tkinter。请问在Tkinter中,如何在按下“下一步”按钮后,让屏幕切换到第二张图片,而不打开一个新窗口呢?
另外,你能推荐一些其他适合我这个项目的Python GUI模块吗?
3 个回答
0
我在pygtk中做了这个,使用了一个带有隐藏标签的选项卡控件。你可以在glade中设计这个界面,然后在代码里自动切换选项卡。
不过现在如果我有新项目的话,我可能会选择QT,虽然我还没用过。
0
我推荐使用 wxPython。
如果事情比较简单,就用 wxPython 来做吧。
1
Tkinter是一个非常不错的工具包,其他工具包也是如此。Tkinter的一个优势是你可能已经安装了它。而且,它使用起来非常简单,同时功能也很强大。
关于你问的如何让屏幕变化的问题:Tkinter使用了一些叫做pack
和grid
的布局管理器(还有一个不太常用的place
)来安排窗口里的小部件。这些布局管理器的一个特点是可以让你把一个窗口移除,使其变得不可见。
比如,你可以把每个“页面”创建为一个Frame
,里面放其他小部件。要切换页面,你可以调用pack_forget
或grid_forget
来隐藏当前页面,然后再用pack
或grid
来显示新页面。这是一种非常常见且有用的技巧。grid_remove
还有一个额外的好处,就是它会记住最初显示窗口时使用的选项,这样在切换可见和不可见时会更方便一些。