Tkinter column配置重量未调整

2024-06-25 23:11:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我是Tkinter模块的新手。我只有PyQt5的经验。我在我的框架里玩一些小部件。他们是三个按钮,我试图扩大他们的大小相对于窗口的大小。为此,我使用w.columnconfigure(n,weight=1)。这应该把我的3个按钮分散到窗框上。这就是我正在运行的代码。在将小部件放入网格之前,我尝试过使用w.columnconfigure,正如在发布的代码中看到的那样,在将小部件放入网格之后。我没有发现任何区别或功能。有会议吗?不管怎样,谢谢你的指导!在

    def create_widgets(self):
        """ Create three buttons that do nothing. """
        self.bttn1 = Button(self, text="I do nothing")

        self.bttn2 = Button(self)
        self.bttn2.configure(text="Me too!")   

        self.bttn3 = Button(self)
        self.bttn3["text"] = "Same here!"

        self.bttnCt = Button(self)
        self.bttnCt["text"] = "Total Clicks: 0"
        self.bttnCt["command"] = self.update_count

        self.bttn1.grid(row=0, column=0, sticky=W+E)
        self.bttn2.grid(row=0, column=1, sticky=W+E)
        self.bttn3.grid(row=0, column=2, sticky=W+E)
        self.bttnCt.grid(row=1, column=1, sticky=W+E)

        bttn_list = [self.bttn1, self.bttn2, self.bttn3, self.bttnCt]

        for k, i in enumerate(bttn_list):
            i.columnconfigure(k, weight=1)

        #self.bttn1.columnconfigure(0, weight=1)
        #self.bttn2.columnconfigure(1, weight=3)        
        #self.bttn3.columnconfigure(2, weight=1)
        #self.bttnCt.columnconfigure(3, weight=1) 

Tags: textself部件columnbutton按钮gridrow
1条回答
网友
1楼 · 发布于 2024-06-25 23:11:11

columnconfigure()rowconfigure()函数应用于窗口或框架,小部件是其一部分。现在你把它应用到按钮上。基本上应用于其父级。在

这里有一个小例子。在

import tkinter as tk

app = tk.Tk()

bttn1 = tk.Button(app, text="I do nothing")
bttn2 = tk.Button(app, text='Me too!')
bttn3 = tk.Button(app, text='Same here!')
bttnCt = tk.Button(app, text='Total Clicks: 0')

bttn1.grid(row=0, column=0, sticky="ew")
bttn2.grid(row=0, column=1, sticky="ew")
bttn3.grid(row=0, column=2, sticky="ew")
bttnCt.grid(row=1, column=1, sticky="ew")

bttn_list = [bttn1, bttn2, bttn3, bttnCt]

for i in range(len(bttn_list)):
    app.columnconfigure(i, weight=1) ## Not the button, but the parent

app.mainloop()

enter image description here

相关问题 更多 >