You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何调整Tkinter垂直Notebook标签页至左侧顶部?

解决方案

要将垂直标签页从左侧下方调整到左侧顶部,只需修改ttk.Style中tabposition的参数值:

  • 原参数tabposition='ws'表示左侧(West)+ 底部(South)对齐,标签会从下往上排列
  • 修改为tabposition='wn'后,表示左侧(West)+ 顶部(North)对齐,标签会从上往下排列,对应你需要的左侧顶部位置

修改后的完整代码:

import tkinter as tk
import tkinter.ttk as ttk

class VNotebook(ttk.Notebook):
    def __init__(self, *args, **kwargs):
        style = ttk.Style()
        # 将tabposition从'ws'改为'wn'
        style.configure("TNotebook",tabposition='wn', borderwidth=0)
        super().__init__(*args, **kwargs)


root = tk.Tk()
root.geometry("450x400+525+350")
root.after(1, lambda: root.focus_force())

tabs = VNotebook(root)
tabs.pack(expand=True, fill="both")

tab1 = tk.Frame(tabs)
tab2 = tk.Frame(tabs)
tab3 = tk.Frame(tabs)
tab4 = tk.Frame(tabs)
tab5 = tk.Frame(tabs)

tabs.add(tab1, text="tab1")
tabs.add(tab2, text="tab2")
tabs.add(tab3, text="tab3")
tabs.add(tab4, text="tab4")
tabs.add(tab5, text="tab5")

root.mainloop()

补充说明:tabposition的参数格式为[方向][对齐],方向可选n(北/上)、e(东/右)、s(南/下)、w(西/左),对齐方向配合主方向使用,比如右侧标签要顶部对齐就用en,底部对齐用es。

内容的提问来源于stack exchange,提问作者GhostShadow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 00:35:25