首页 > 解决方案 > 获取 tkinter 标签以不与网格中的其他标签交互

问题描述

我的编程有问题,column=0,row=0/TITLE 与 column=2,row=1 / "text1" 和 row=2,column=2 / "text2" 交互。问题是“TITLE 将“text1”和“text2”推到右边,而它甚至不在同一列中。有人知道如何让“text 1”和“text2”像往常一样站在中间吗?这个是我的示例代码:

from tkinter import *
import tkinter.ttk
master = Tk()

Label(master, text="TITLE", font=("Courier", 60)).grid(columnspan=2)
Label(master, text="small title1", font=("Courier", 15)).grid(row=1)
Label(master, text="small title2", font=("Courier", 15)).grid(row=2)
tkinter.ttk.Separator(master, orient=VERTICAL).grid(column=1, row=1,rowspan=8, sticky='ns')
Label(master, text="text1", font=("Courier", 15)).grid(row=1, column=2)
Label(master, text="text2", font=("Courier", 15)).grid(row=2, column=2)

[[1]

我运行程序时的样子

标签: pythontkinter

解决方案


columnspan=3表示它占据第 0、1 和 2 列。由于您的其他小部件位于第 3 列,并且根据定义,第 3 列位于第 2 列的右侧,因此第 3 列中的任何内容都必须位于第 2 列中小部件的右侧。

如果将列跨度更改为 4,则标题将占据第 0、1、2 和 3 列,这意味着标题将位于第 3 列中的项目之上,而不是位于它们的左侧。


推荐阅读