如何为tkinter标签提供相同的尺寸?

时间:2018-04-12 02:45:45

标签: python tkinter

标签目前是我想要的并排。但是每个标签的宽度都不同。有没有办法让每个标签具有相同的宽度?

还有一种方法可以让标签具有相同的测量值并同时一直填充到250?

这是我目前的代码:

node

3 个答案:

答案 0 :(得分:1)

你应该尝试在包装上检查tkinter的documentation

检查这是否是您要找的:

SELECT client_id
FROM transactions
GROUP BY client_id
HAVING SUM(value) >= 500;

填充参数基本上填充父容器。

Expand参数将用于增加剩余空间。

另外一定要看一下tkinter的重量,here就是一个例子。

答案 1 :(得分:1)

您可以将关键字参数widthheighttk.Label

一起使用
import tkinter as tk

if __name__ == '__main__':

    root = tk.Tk()
    root.geometry("250x50")

    label_frame = tk.Frame(root)

    w = tk.Label(label_frame, text="Label UNO", bg="red", fg="white", width=8, height=2)
    w.pack(side=tk.LEFT)
    w = tk.Label(label_frame, text="Label2", bg="green", fg="black", width=8, height=2)
    w.pack(side=tk.LEFT)
    w = tk.Label(label_frame, text="Label DREI", bg="blue", fg="white", width=8, height=2)
    w.pack(side=tk.LEFT)

    label_frame.pack(expand=True)

    root.mainloop()

enter image description here

注意:

  • tkinter is imported as tk以保持名称空间整洁。

  • tk.Labels中包含tk.Frame,因此一旦构建完成, 你不必担心它,直到你把框架包装好 GUI。

  • 标签时,宽度和高度的单位为“文本单位” 包含文字。

答案 2 :(得分:1)

要使标签宽度相同,只需将width选项添加到label

即可

e.g。 width=10这将指定字符宽度的空间大小。

如果要将相同的宽度应用于多个标签,请将宽度值存储在变量中,让我们说label_w = 10

因此您的代码可能如下所示:

from tkinter import *

root = Tk()
root.geometry("250x50")
label_w = 10
w = Label(root, text="Label UNO", bg="red", fg="white", width=label_w)
w.pack(side=LEFT)
w = Label(root, text="Label2", bg="green", fg="black", width=label_w)
w.pack(side=LEFT)
w = Label(root, text="Label DREI", bg="blue", fg="white", width=label_w)
w.pack(side=LEFT)

root.mainloop()

同时填充至250

这取决于您创建的标签数量,让我们说window_width = 250labels_all = 3,然后width选项将width = window_width/labels_all 此外,如果您不写geometry个值,则窗口大小将自动适合标签。

如果您的窗口足够简单,您可以考虑使用expand中的包装工具选项expand=1,如果您的标签有fill选项,也可以包含 def __init__(self, scraped_tweets_filename): self.fetched_tweets_filename = fetched_tweets_filename 选项颜色,填充法律价值:' x',' y','两者','无'。

有关详情,请查看label-optionspacker-options