def create_layout(frame):
frame = Frame(frame, bg = 'red')
frame.pack(side = LEFT, fill=BOTH)
b = Button(frame, text='Button1', command=pressed, padx = 20)
b.pack(pady = 20, padx = 20)
c = Button(frame, text='Button2', command=pressed, padx=20)
c.pack(pady = 20, padx = 20)
到目前为止,我得到了这个代码,假设已经调用了来自Tkinter import*的代码,并且框架已经有了它的大小和颜色设置。它应该看起来像下图。然而,我永远不能得到按钮3和4的框架在右边,每当我添加一个按钮,它会在红色的框架。
您需要添加另一个位于右侧的框架,然后将按钮3和按钮4打包到其中。可能将先前的帧更改为frame1,然后:
然后,创建按钮并将其打包。希望这有帮助!
你有两个框架和四个按钮。
让我们创建一个名为
create_widgets()
的函数,它只包含调用另外两个函数create_frames()
和create_buttons()
对于帧,我们使用^{} 布局管理器:
这将创建此接口:
让我们设计
create_buttons()
的方式,它只包括调用两个不同的函数,每个函数都有一个特定的任务:create_left_frame_buttons()
为左框架创建按钮create_right_frame_buttons()
为右框架创建按钮以下是它们的简单实现:
请注意,我使用选项
padx
和pady
在按钮之间创建适当的间距。到目前为止,这是最终的界面:
你可以看到左框和右框都在缩小,结果很难看。为了解决这个问题,我们可以为每个帧设置
rid_propagate(0)
。因此,根据这些观察和以下Tkinter best practices,这里是完整的代码:
演示:
好的,第一组按钮,按钮1和2在“框架”中,按钮3和4应该省略。
因此,使用按钮1和2,打开背景为红色的框架,将其包装为side=tk.LEFT,同时填充和展开它。
使用按钮3和4,只需将其左偏并展开即可。那就像一种款待;-)
相关问题 更多 >
编程相关推荐