tkinter

tkinter简单案例

from tkinter import *
import tkinter.messagebox as messagebox
app=Tk()


#输入名字
F1 = Frame(app)
Label (F1,text='你的名字?').pack()
nameVar = StringVar()
nameVar.set('')
Entry(F1,textvariable=nameVar,width=15).pack()
#输入年龄
def Digital(content):#content输入字母的内容
    if content.isdigit() or content=="":#Python isdigit() 方法检测字符串是否只由数字组成
        return True
    else:
        return False
dig_in=app.register(Digital)
Label(F1,text='你的年龄?').pack()
ageVar=StringVar()
ageVar.set('')
Entry(F1,textvariable=ageVar,width=15, validate='key',
      validatecommand=(dig_in,'%P')).pack()#%p输入框实时显示数据P(大写的)
#单选
langs=['Python','Ruby','Java','Go','Node.js','C/C++','PHP']
Label(F1,text='你最喜欢哪一门编程语言?(单选)').pack()
bestVar=IntVar()
bestVar.set(0)
for i in range(len(langs)):
    Radiobutton(F1,text=langs[i],variable=bestVar,value=i).pack(anchor=W)
#多选
Label(F1,text='你想学习哪些编程语言?(多选)').pack()
selectVar=[]
for lang in langs:
    selectVar.append(IntVar())
    Checkbutton(F1,text=lang,variable=selectVar[-1]).pack(anchor=W)
#在控制台输出
# def callback():
#     name=nameVar.get()
#     age=ageVar.get()
#     best=langs[bestVar.get()]
#     selects=[]
#     for i in range(len(selectVar)):
#         if selectVar[i].get()==1:
#             selects.append(langs[i])
#     print(name,age,best,selects)
def callback():
    name=nameVar.get()
    age=ageVar.get()
    best=langs[bestVar.get()]
    selects=[]
    for i in range(len(selectVar)):
        if selectVar[i].get()==1:
            selects.append(langs[i])
    string='你的名字:'+name+'\n'
    string+='你的年龄:'+age+'\n'
    string+='你最喜欢的编程语言:'+best+'\n'
    string+='你想学的编程语言:'+''.join(selects)+'\n'
    messagebox.showinfo('确认你的信息',string)
Button(F1,text='提交',command=callback).pack(side=LEFT,padx=10)
Button(F1,text='退出',command=app.quit).pack(side=RIGHT,padx=10)

F1.pack()

app.mainloop()

你可能感兴趣的:(python,之,tkinter,python,tkinter)