微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ttk笔记本无法使用网格几何管理器进行扩展

如何解决ttk笔记本无法使用网格几何管理器进行扩展

当在tk中使用.grid方法调整GUI的大小时,我无法解决如何正确扩展ttk Notebook小部件的问题。在.pack中它很简单,我尝试了一些粘性配置方法,但他们看不出有什么用。

代码

import tkinter as tk                     
from tkinter import ttk 

root = tk.Tk() 
root.title("Tab Widget")
root.geometry("500x350") 
tabControl = ttk.Notebook(root) 
  
tab1 = ttk.Frame(tabControl) 
tab2 = ttk.Frame(tabControl)
 
tabControl.add(tab1,text ='Tab 1') 
tabControl.add(tab2,text ='Tab 2')

tabControl.pack(expand = 1,fill ="both")
#tabControl.grid(column=0,row=0,sticky= tk.E+tk.W+tk.N+tk.S)

root.mainloop() 

所需结果

可以扩展的gui,具有新的窗口大小,可以调整选项卡控件和框架的大小。

解决方法

默认情况下,网格会缩小。如果您有更多类似背包的行为,则必须赋予细胞“重量”。这很容易做到:

import tkinter as tk                     
from tkinter import ttk 

root = tk.Tk() 
root.title("Tab Widget")
root.geometry("500x350") 
tabControl = ttk.Notebook(root) 
  
tab1 = ttk.Frame(tabControl) 
tab2 = ttk.Frame(tabControl)
 
tabControl.add(tab1,text ='Tab 1') 
tabControl.add(tab2,text ='Tab 2')

tk.Grid.rowconfigure(root,weight=1)
tk.Grid.columnconfigure(root,weight=1)
tabControl.grid(column=0,row=0,sticky=tk.E+tk.W+tk.N+tk.S)

root.mainloop() 

应该这样做。如果您还有其他问题,请告诉我们。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。