(python)GUI简单的tkinter小应用

    xiaoxiao2021-04-12  30

    书上的小例题

    运行结果效果图

    源码分享

    import tkinter import tkinter.messagebox import tkinter.ttk listboxStudents=[] root=tkinter.Tk() root.title('Seclection widgets----by Dong Fuguo') root['height']=400 root['width']=320 lableName=tkinter.Label(root,text='Name:',justify=tkinter.RIGHT,width=50) lableName.place(x=10,y=5,width=50,height=20) varName=tkinter.StringVar(value='') entryName=tkinter.Entry(root,width=120,textvariable=varName) entryName.place(x=70,y=5,width=50,height=20) lableGrade=tkinter.Label(root,text='Grade:',justify=tkinter.RIGHT,width=50) lableGrade.place(x=10,y=40,width=50,height=20) studentClasses={ '1':['1','2','3','4'], '2':['1','2'], '3':['1','2','3'] } comboGrade=tkinter.ttk.Combobox(root,values=tuple(studentClasses.keys()),width=50) comboGrade.place(x=70,y=40,width=50,height=20) def comboChange(event): grade=comboGrade.get() if grade: comboClass["values"]=studentClasses.get(grade) else: comboClass.set([ ]) comboGrade.bind('<<ComboboxSelected>>',comboChange) lableClass=tkinter.Label(root,text='Class:',justify=tkinter.RIGHT,width=50) lableClass.place(x=130,y=40,width=50,height=20) comboClass=tkinter.ttk.Combobox(root,width=50) comboClass.place(x=190,y=40,width=50,height=20) lableSex=tkinter.Label(root,text='Sex:',justify=tkinter.RIGHT,width=50) lableSex.place(x=10,y=70,width=50,height=20) sex=tkinter.IntVar(value=1) radioMan=tkinter.Radiobutton(root,variable=sex,value=1,text='Man') radioMan.place(x=70,y=70,width=70,height=20) radioWoman=tkinter.Radiobutton(root,variable=sex,value=0,text='Woman') radioWoman.place(x=130,y=70,width=70,height=20) monitor=tkinter.IntVar(value=0) checkMonitor=tkinter.Checkbutton(root,text='Is Monitor?',variable=monitor,onvalue=1,offvalue=0) checkMonitor.place(x=20,y=100,width=100,height=20) def addInformation(): result='Name:'+entryName.get() result=result+';Grade:'+comboGrade.get() result=result+';Class:'+comboClass.get() result=result+';Sex:'+('Man' if sex.get() else 'Woman') result=result+';Monitor:'+('yes' if monitor.get() else 'No') listboxStudents.insert(0,result) buttonAdd=tkinter.Button(root,text='Add',width=40,command=addInformation()) buttonAdd.place(x=130,y=100,width=40,height=20) def deleteSeclection(): selection=listboxStudents.curselection() if not selection: tkinter.messagebox.showinfo(title='Infomation',message='No Seclection') else: listboxStudents.delete(selection) buttonDelete=tkinter.Button(root,text='DeleteSelection',width=100,command=deleteSeclection) buttonDelete.place(x=180,y=100,width=100,height=20) listboxStudents=tkinter.Listbox(root,width=300) listboxStudents.place(x=10,y=130,width=300,height=200) root.mainloop()
    转载请注明原文地址: https://ju.6miu.com/read-668239.html

    最新回复(0)