python - 使用 Notebook 在 Tkinter Python 中创建选项卡导致框架缩小
问题描述
我在这里有一个简单的项目,我在这个项目上创建了一些选项卡,但是这些选项卡使整个主框架缩小了,我想按我的意愿变大。请帮我。我希望这些标签就像角落和整个主框架上的镀铬标签一样。
当前视图是这样的在此处输入图像描述但我想要的是适合主框架的原始大小而不缩小它在此处输入图像描述
import tkinter
from tkinter import *
from tkinter import ttk
mainwindow = Tk()
mainwindow.title('Student Database')
mainwindow.config(bg='#4d4d4d')
#centering the main window on screen
def centrewindow(w, h):
ws = mainwindow.winfo_screenwidth()
hs = mainwindow.winfo_screenheight()
x = (ws/2) - (w/2)
y = (hs/2) -(h/2)
mainwindow.geometry('%dx%d+%d+%d' % (w, h, x, y))
centrewindow(550, 400)
mainframe = Frame(width= 1000, height= 600, bg= '#d9d9d9', bd= 0.3, relief= SOLID)
mainframe.pack(pady=100, padx= 100)
tabcontrol = ttk.Notebook(mainframe)
tab1 = ttk.Frame(tabcontrol)
tabcontrol.add(tab1, text='Tab no. 1')
l1 = Label(tab1, text='Hello Its Tab 1')
l1.pack()
tab2 = ttk.Frame(tabcontrol)
tabcontrol.add(tab2, text='Tab no. 2')
l2 = Label(tab2, text='Hello Its Tab 2')
l2.pack()
tabcontrol.pack(expand=1, fill='both')
mainwindow.mainloop()
解决方案
您需要为链中的每个帧执行填充和扩展命令。你错过了这个:
mainframe.pack(fill='both', expand=True)
请注意,当框架中放置某些东西时,框架的宽度和高度设置将被忽略。
推荐阅读
- java - Mockito 模拟没有被调用 - ArgumentCaptor 被忽略
- android - “SwipeRefreshLayout”刷新 web 视图只工作一次
- c - 如何验证输入值只是 C 中的正数?
- python - 如何在 BeautifulSoup 中使用 find() 和 find_all()?
- javascript - 如何在对象中使用 .includes() 或类似内容?
- r - 在R中的openxlsx中将一行文本添加到Excel工作表
- java - 动态重命名资产文件夹中的文件名
- visual-studio-code - javascript (React) 的智能代码在 VS Code windows 10 上不起作用
- selenium - Selenium C#异常状态为ReceiveFailure,消息为:底层连接已关闭
- javascript - 日历单击按样式颜色?