import pandas as pd
import csv
from tkinter import *
master = Tk()
textBox = Text(master, height=1, width=10)
textBox.grid(row=0, column=1)
fileVar = StringVar()
fileLabel = Label(master, textvariable=fileVar)
fileLabel.grid(row=3, column=1)
fileVar2 = StringVar()
fileLabel2 = Label(master, textvariable=fileVar)
fileLabel2.grid(row=3, column=2)
def retrieve_input():
Customer = textBox.get("1.0","end-1c")
fileread = pd.read_csv('50.csv', encoding='latin-1')
filevalue = fileread.loc[fileread['Customer'].str.contains(Customer, na=False),"Jul-18\nQty"]
productheader = fileread.loc[fileread['Customer'].str.contains(Customer, na=False), 'Product']
fileVar.set(productheader)
fileVar2.set(filevalue)
button1 = Button(master,text="Show Values", command=lambda: retrieve_input())
button1.grid(row=4, column=1)
mainloop()
我有这个程序可以在Tkinter Gui中打印值,以获取特定行中的特定值。但是,要打印的值的格式非常混乱,我不确定如何清除它,此外,我希望它不显示其旁边标记的数字,而只是产品名称(以蓝色显示)和与之关联的值(带有小数的数字值)。
这是GUI的快照:
此外,在列表的最底部,还将显示:
理想情况下,我希望它仅显示标头(7月18日),而不显示数据类型
另外,如果有帮助的话,这些都是预测文件(带有日期的标头的原因)
这是我的csv文件外观的虚拟图像:
好的,所以经过一些测试,我想我已经找到了适合您的修复程序。
标签内部间距的主要问题是字体不属于等宽字体的问题。
尝试使用字体Consolas
,看看如何更好地固定您的布局。
import pandas as pd
from tkinter import *
master = Tk()
textBox = Text(master, height=1, width=10, font=('Consolas', 12))
textBox.grid(row=0, column=1)
fileVar = StringVar()
fileLabel = Label(master, textvariable=fileVar, font=('Consolas', 12))
fileLabel.grid(row=3, column=1)
def retrieve_input():
department = textBox.get("1.0","end-1c")
fileread = pd.read_csv('50.csv', encoding='latin-1')
filevalue = fileread.loc[fileread['Customer'].str.contains(department, na=False),("Jul-18\nQty", "Product")]
fileVar.set(filevalue)
button1 = Button(master,text="Show Values", command=lambda: retrieve_input())
button1.grid(row=4, column=1)
master.mainloop()
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句