我希望能够使用Canvas作为其他小部件的元容器。 我想将我的GUI分成左、中、右三个部分。在每个部分内,我希望能够放置小部件,如:Checkbutton、Button、Label等。 如何在Canvas小部件中放置其他小部件?
你的选择取决于你真正想要实现什么。使用画布相比框架有何优势?你可以像在其他容器中一样使用pack、grid或place轻松地向画布添加窗口部件。这样做的好处是,当你滚动画布时,这些项目不会滚动,因为它们实际上不是画布的一部分。另一种选择是在画布上创建窗口对象。你可以使用canvas的create_window方法来完成这个过程。好处是,这个窗口成为画布的一部分,将随着画布上的任何其他对象一起滚动。缺点是,你的唯一选项是绝对位置,并且必须显式控制小部件的大小。