gpt4 book ai didi

python - 将几何网格应用于 tkinter Notebook 页面中的小部件时出现问题

转载 作者:行者123 更新时间:2023-11-28 22:29:34 24 4
gpt4 key购买 nike

能否请您看一下这个演示并告诉我为什么我无法将几何网格设置应用到笔记本选项卡小部件:

如你所见,我在 lb1

上试过了

lb1.grid(row=1, column=1, sticky='W', padx=5, pady=5, ipadx=5, ipady=5)

但是标签还在标签页的中间

import Tkinter
from Tkinter import *
import ttk
from ttk import *

app = Tk()
app.configure(background='DimGray')
app.geometry('600x600')
app.resizable(width=False, height=False)

note = Notebook(app)

tab1 = Frame(note)
tab2 = Frame(note)
tab3 = Frame(note)

note.add(tab1, text = "Tracing", compound=TOP)
note.add(tab2, text = "Network Details")
note.add(tab3, text = "Tab Three")
note.pack(fill=BOTH, expand=True)

lb1 = Label(tab1, text="Trace Object")
lb1.grid(row=1, column=1, sticky='E', padx=5, pady=5, ipadx=5, ipady=5)
lb1.pack()

variable = StringVar(app)
variable.set("Select From List")

cm = ttk.Combobox(tab1, textvariable=variable)
cm.config(values =('Select From Phase A', 'Select From Phase B'))
cm.grid(row=1, column=2, sticky='E', padx=5, pady=5, ipadx=5, ipady=5)
cm.pack()

app.mainloop()

这是我希望达到的效果

enter image description here

最佳答案

您不能同时使用多个几何管理器。

好吧,我看到的答案说明了同样的事情,但实际上如果你不滥用它们就可以。这就是您的情况:您使用了多个几何管理器,但使用的方式不对。

你有两个选择:

  • 选项 1:

首先,请注意,您要为tab1 小部件使用pack() 几何管理器。这意味着您必须删除这两行:

lb1.grid(row=1, column=1, sticky='E', padx=5, pady=5, ipadx=5, ipady=5)

和:

cm.grid(row=1, column=2, sticky='E', padx=5, pady=5, ipadx=5, ipady=5)
  • 选项 2:

你想为 note 小部件使用 pack() 几何管理器,但你想为 使用 grid()选项卡 1。通过删除这两行并保留我上面提到的前几行,您可以安全地做到这一点,而不会混淆 Python 解释器:

lb1.pack()

和:

cm.pack()

关于python - 将几何网格应用于 tkinter Notebook 页面中的小部件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42934717/

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