""""brid布局"""
from tkinter import *
import tkinter.filedialog
from tkinter import scrolledtext # 导入滚动文本框的模块
from tkinter.messagebox import *
import time
class TKMain():
xin = Tk()
path = StringVar()
#路径赋值
def selectPath(self):
path_ = tkinter.filedialog.askopenfilename()
self.path.set(path_)
# 桌面
def views(self):
self.xin.geometry('400x400') # 指定主框体大小
self.xin.title('名称') # 标题名
Label(self.xin, text="编号").grid(row=1, column=0, sticky=E)
self.number_id = tkinter.StringVar()
self.number_id_entry = tkinter.Entry(self.xin)
self.number_id_entry["textvariable"] = self.number_id
self.number_id_entry.grid(row=1, column=1, sticky=E)
Label(self.xin, text="文件").grid(row=3, column=0, sticky=E)
#Entry(self.xin, stat="readonly", textvariable=self.path).grid(row=3, column=1, sticky=E)
self.xls_path = tkinter.StringVar()
self.xls_path_entry = tkinter.Entry(self.xin,stat="readonly")
self.xls_path_entry["textvariable"] = self.path
self.xls_path_entry.grid(row=3, column=1, sticky=E)
Button(self.xin, text=" 选择 ", command=self.selectPath).grid(row=3, column=2, sticky=E)
# 占位
Label(self.xin, text="").grid(row=5, column=0)
Button(self.xin, text=" 运行 ", command=self.validate).grid(row=6, column=1, sticky=E)
Button(self.xin, text=" 停止 ").grid(row=6, column=2, sticky=E)
# 占位
Label(self.xin, text="").grid(row=7, column=0)
# 滚动文本框
scrolW = 50 # 设置文本框的长度
scrolH = 18 # 设置文本框的高度
self.text = scrolledtext.ScrolledText(self.xin, width=scrolW, height=scrolH, wrap=tkinter.WORD)
self.text.grid(row=10, columnspan=8, sticky=tkinter.E)
pass
#验证事件
def validate(self):
is_validata = True;
try:
number_id_val = int(self.number_id.get());
xls_path_val = self.path.get()
if xls_path_val =="":
is_validata = FALSE
if number_id_val < 1:
is_validata = FALSE
except:
is_validata = FALSE
if is_validata == FALSE:
for i in range(0,100):
self.text.see(END) # 一直查看文本的最后位置~
time.sleep(0.5)
self.text.insert('end', "验证不通过,请查看!" + str(i)+ "
")
self.text.update()#一直更新输出
if i == 50 :
break
print("验证不通过!")
pass
def app(self):
self.views()
mainloop()
def main():
TKMain().app();
pass;
if __name__ == "__main__":
main()
""""brid布局"""from tkinter import *import tkinter.filedialogfrom tkinter import scrolledtext # 导入滚动文本框的模块from tkinter.messagebox import *import time
class TKMain(): xin = Tk() path = StringVar() #路径赋值 def selectPath(self): path_ = tkinter.filedialog.askopenfilename() self.path.set(path_) # 桌面 def views(self): self.xin.geometry('400x400') # 指定主框体大小 self.xin.title('名称') # 标题名 Label(self.xin, text="编号").grid(row=1, column=0, sticky=E)
self.number_id = tkinter.StringVar() self.number_id_entry = tkinter.Entry(self.xin) self.number_id_entry["textvariable"] = self.number_id self.number_id_entry.grid(row=1, column=1, sticky=E)
Label(self.xin, text="文件").grid(row=3, column=0, sticky=E) #Entry(self.xin, stat="readonly", textvariable=self.path).grid(row=3, column=1, sticky=E) self.xls_path = tkinter.StringVar() self.xls_path_entry = tkinter.Entry(self.xin,stat="readonly") self.xls_path_entry["textvariable"] = self.path self.xls_path_entry.grid(row=3, column=1, sticky=E) Button(self.xin, text=" 选择 ", command=self.selectPath).grid(row=3, column=2, sticky=E) # 占位 Label(self.xin, text="").grid(row=5, column=0) Button(self.xin, text=" 运行 ", command=self.validate).grid(row=6, column=1, sticky=E) Button(self.xin, text=" 停止 ").grid(row=6, column=2, sticky=E) # 占位 Label(self.xin, text="").grid(row=7, column=0) # 滚动文本框 scrolW = 50 # 设置文本框的长度 scrolH = 18 # 设置文本框的高度 self.text = scrolledtext.ScrolledText(self.xin, width=scrolW, height=scrolH, wrap=tkinter.WORD) self.text.grid(row=10, columnspan=8, sticky=tkinter.E) pass
#验证事件 def validate(self): is_validata = True; try: number_id_val = int(self.number_id.get()); xls_path_val = self.path.get() if xls_path_val =="": is_validata = FALSE if number_id_val < 1: is_validata = FALSE except: is_validata = FALSE if is_validata == FALSE: for i in range(0,100): self.text.see(END) # 一直查看文本的最后位置~ time.sleep(0.5) self.text.insert('end', "验证不通过,请查看!" + str(i)+ "
") self.text.update()#一直更新输出 if i == 50 : break print("验证不通过!") pass def app(self): self.views() mainloop()def main(): TKMain().app(); pass;
if __name__ == "__main__": main()