Python - 对齐 Tkinter 标签文本

标签 python user-interface tkinter label

我试图让 l_Title 标签(在 StartPage 类中)内的文本右对齐,但是 anchorjustify 似乎有效。

我没有收到错误消息,可能影响它的一件事是我使用 ttk 标签而不是 tk 标签,但是当我改回 tk 标签时没有任何变化。

import tkinter as tk
from tkinter import ttk

LARGE_FONT= ("Verdana", 12)

def To_Print(self):
    xf = Enter_Inputs(self,'xf')
    print('xf = ', xf)

def Enter_Inputs(self,x): # Enter inputs from values typed in

      xf_In = int(self.e_xf.get())

      if x == 'xf':
          x = float(xf_In)/100 

      return x


class TestApp(tk.Tk):

    def __init__(self, *args, **kwargs):

        tk.Tk.__init__(self, *args, **kwargs)

        container = tk.Frame(self)
        container.pack(side="top", fill="both", expand = True)
        container.grid_rowconfigure(0, weight=1)
        container.grid_columnconfigure(0, weight=1)

        self.frames = {}

        frame = StartPage(container, self)

        self.frames[StartPage] = frame

        frame.grid(row=0, column=0, sticky="nsew")

        self.show_frame(StartPage)

    def show_frame(self, cont):

        frame = self.frames[cont]
        frame.tkraise()


class StartPage(tk.Frame):

    def __init__(self, parent, controller):
        tk.Frame.__init__(self,parent)


        self.l_Title = ttk.Label(self, text="Start Page", font=LARGE_FONT, 
                              justify="right", anchor="e")
        self.l_Title.grid(row=0, columnspan = 2)


        self.l_xf = tk.Label(self, text="% xA of Feed")
        self.l_xf.grid(row=1)

        self.e_xf = tk.Entry(self)
        self.e_xf.grid(row=1, column=1)


        self.b_Run = tk.Button(self, text="Click to Run", command=lambda: To_Print(self))
        self.b_Run.grid(row=2, column=0, columnspan = 2)  


app = TestApp()
app.mainloop()

最佳答案

问题在于标签会调整其大小以完美适合文本。 justify 仅在标签大于文本时才有效。

在您的情况下,定义标签的位置而不是标签中的文本要容易得多:

self.l_Title.grid(row=0, columnspan = 2, sticky='e')

关于Python - 对齐 Tkinter 标签文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44249688/

相关文章:

ios - UITesting 验证表格单元格中是否存在复选标记

c# - 如何通过cmd运行windows窗体应用程序

java - JTextPane插入大文本问题

python - 使用 Geopy 和 Python 进行地理编码

python - 如何从具有多行的 2 个不同数据集创建可视化?

python - 直接从返回的函数列表扩展列表

python - 我无法让我的代码迭代 x -= 1

Python/Tkinter : Using custom mouse cursors under Windows?

python - 使用 tkinter 的 iconbitmap 读取 .exe 中的图标

python - tkinter陷印框架入口(后续)