如何解决如何格式化从Tkinter中的文本小部件输入的文本
在我的tkinter程序中,我正在使用Text
小部件向用户收集文本,稍后使用label
小部件将其打印在屏幕上。尽管我可以将其打印到屏幕上,但文本全部居中对齐。由于我要收集的内容是难以理解的程序,因此我需要使其保持对齐状态。
这是我的程序方法- 收集到程序后,它将存储到字典中
def Procedure(self):
textfield = Text(gui,height=30,width=82)
textfield.place(x="20",y="100")
procedure_label = LabelWidget(self.screen,"Procedure","Courier",40)
procedure_label.Call().place(x="220",y="20")
button_save = Button(gui,text="Next",padx="50",pady="20",bg="lightgrey",command=partial(self.CheckPage,4,procedure=textfield))
button_save.place(x="250",y="600")
这就是我打印程序的方式
proc_text_label = ""
for i in fullDictProc:
proc_text_label_temp = Label(root,text=i,wraplength=900)
proc_text_label = proc_text_label_temp
proc_text_label.config(font=("Courier",12))
proc_text_label.place(x=70,y=250)
这是演示该问题的最小可重复代码
运行它并查看文本的对齐方式。
from tkinter import *
from functools import partial
gui = Tk()
gui.geometry("700x700")
def printit(textfield):
procedure_list = [textfield.get("1.0","end-1c")]
textfield.place_forget()
proc_text_label = ""
for i in procedure_list:
proc_text_label_temp = Label(gui,y=250)
textfield = Text(gui,width=82)
textfield.place(x="20",y="100")
button_save = Button(gui,command=partial(printit,textfield))
button_save.place(x=500,y=600)
gui.mainloop()
解决方法
我认为您要寻找的是justify
:
proc_text_label.config(justify='left')
,
我认为您正在寻找的是anchor参数。 这就是您的最小示例的工作方式:
from tkinter import *
from functools import partial
gui = Tk()
gui.geometry("700x700")
def printit(textfield):
procedure_list = [textfield.get("1.0","end-1c")]
textfield.place_forget()
proc_text_label = ""
for i in procedure_list:
proc_text_label_temp = Label(gui,text=i,wraplength=900,anchor='w',bg='blue',width=50)
proc_text_label = proc_text_label_temp
proc_text_label.config(font=("Courier",12))
proc_text_label.place(x=70,y=250)
textfield = Text(gui,height=30,width=82)
textfield.place(x="20",y="100")
button_save = Button(gui,text="Next",padx="50",pady="20",bg="lightgrey",command=partial(printit,textfield))
button_save.place(x=500,y=600)
gui.mainloop()
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。