我必须用python语言编写一个程序,它使用GUI实现三种不同的凸包计算算法,以选择包含数据的文件并显示汇总结果。
我使用tkniter进行GUI,我在从pc导入数据文件并将数据保存在列表中时出现问题。 这是我的代码
def OpenFile ():
filename = filedialog.askopenfilename()
lines = filename.readlines()
filename.close()
root = Tk()
root.title('convex hull')
root.geometry('400x300')
label1 = ttk.Label(root,text="Enter points").place(x=20,y=3)
label2 = ttk.Label(root,text = "Choose One of the algorithm to sort the points").place(x=0,y=60)
btn1= ttk.Button(root,text="Browse", command = OpenFile)
btn1.pack()
答案 0 :(得分:0)
您没有提出问题,但代码至少存在三个问题。 1.一旦lines
返回,局部变量OpenFile
就会消失。使行成为全局变量并将其声明为此类。 2. label1
和label2
都是None
,因为它是place
的返回值。 3.您使用两个几何管理器。选一个。 (我建议使用grid
,但在此处使用pack
。)
def OpenFile ():
global lines
filename = filedialog.askopenfilename()
lines = filename.readlines()
filename.close()
root = Tk()
root.title('convex hull')
root.geometry('400x300')
label1 = ttk.Label(root,text="Enter points")
label1.pack()
label2 = ttk.Label(root,text = "Choose One of the algorithm to sort the points")
label2.pack()
btn1= ttk.Button(root,text="Browse", command = OpenFile)
btn1.pack()