gpt4 book ai didi

python - 使用 .grid() 定位时,如何将小部件放置在 tkinter 窗口的最底部?

转载 作者:行者123 更新时间:2023-12-02 04:22:14 32 4
gpt4 key购买 nike

我知道您不能在同一个 Tkinter 窗口中使用不同类型的几何管理器,例如 .grid() 和 .pack()。我有一个使用 .grid() 布局的窗口,我现在正在尝试添加一个状态栏,该状态栏将捕捉到窗口的底部。我在网上找到的唯一方法是使用 .pack(side = BOTTOM),因为窗口的其余部分使用 .grid(),所以该方法不起作用。

有没有一种方法可以让我在使用 .grid() 时选择窗口底部来放置小部件?

最佳答案

from tkinter import *
from tkinter.ttk import *
import tkinter as tk

class sample(Frame):
def __init__(self,master=None):
Frame.__init__(self, master)
self.status = StringVar()
self.status.set("Initializing")
statusbar = Label(root,textvariable = self.status,relief = SUNKEN, anchor = W)
statusbar.pack(side = BOTTOM, fill = X)
self.parent1 = Frame()
self.parent1.pack(side = TOP)
self.createwidgets()
def createwidgets(self):
Label(self.parent1,text = "Grid 1,1").grid(row = 1, column = 1)
Label(self.parent1,text = "Grid 1,2").grid(row = 1, column = 2)
Label(self.parent1,text = "Grid 2,1").grid(row = 2, column = 1)
Label(self.parent1,text = "Grid 2,2").grid(row = 2, column = 2)




if __name__ == '__main__':

root = Tk()
app = sample(master=root)
app.mainloop()

所以使用标签因为我有点懒惰做其他事情,你可以做框架来确保你的窗口的每个部分都可以根据需要打包/网格。框架将是您在尝试排列小部件时使用的有用工具。请注意,在决定你的 parent 时,使用类可以让事情变得更容易一些。所以想象每一帧都是 parent ,他们的 child 可以根据需要打包。所以我建议画出你想要的 GUI,看看你将如何安排它们。此外,如果您想在一个框架内添加另一个框架,只需执行以下操作:

self.level2 = Frame(self.parent1)

您可以在文档中查看其他设置

http://effbot.org/tkinterbook/frame.htm

PS:我使用的是类,因此是 self,如果您不想使用类,那么可以将其更改为没有类。类(class)让阅读变得更好

关于python - 使用 .grid() 定位时,如何将小部件放置在 tkinter 窗口的最底部?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58991973/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com