import tkinter
class App:
def __init__(self,root):
frame = tkinter.Frame(root)
frame.pack(side=tkinter.RIGHT)
self.hi_there = tkinter.Button(frame,text="打招呼",bg='red',fg="blue",command=self.say_hi)
self.hi_there.pack()
def say_hi(self):
print('大家好')
root = tkinter.Tk()
app = App(root)
root.mainloop()
import tkinter
root = tkinter.Tk()
photo_1 = tkinter.PhotoImage(file="8727f9f9512bc4209e66c5bdd4c6d286.gif")
theLable_1 = tkinter.Label(root,
text = "学python\n到FishC",
justify=tkinter.LEFT,
image=photo_1,
compound=tkinter.CENTER,
font=("华康少女字体",20),
fg = "red"
)
theLable_1.pack()
textLable = tkinter.Label(root,text="你下的什么鬼\n多扩所军扩说或或或或或或或或或",justify=tkinter.LEFT,padx=10)
textLable.pack(side=tkinter.LEFT)
photo = tkinter.PhotoImage(file="552394b0637877a888adc1fb3f729f0d.gif")
imgLable = tkinter.Label(root,image=photo)
imgLable.pack(side = tkinter.RIGHT)
tkinter.mainloop()
from tkinter import *
def callback():
var.set("我才不信呢")
root = Tk()
frame_1 = Frame()
frame_2 = Frame()
var = StringVar()
var.set("您所下载的图片含有未成年人限制部分,\n请满18岁后再来观看")
textLable = Label(frame_1,
textvariable=var,
justify=LEFT)
textLable.pack(side=LEFT)
photo = PhotoImage(file="8727f9f9512bc4209e66c5bdd4c6d286.gif")
imgLable = Label(frame_1,image=photo)
imgLable.pack(side=RIGHT)
theButton = Button(frame_2,text="已满18周岁",command=callback)
theButton.pack()
frame_1.pack(padx=10,pady=10)
frame_2.pack(padx=10,pady=10)
mainloop()
***************************************************Checkbutton组件*****************************************************
from tkinter import *
root = Tk()
v = IntVar()
c = Checkbutton(root,text="测试一下",variable=v)
c.pack()
v_1 = IntVar()
b = Checkbutton(root,text="测试2下",variable=v_1)
b.pack()
l = Label(root,textvariable=v)
l.pack()
mainloop()
from tkinter import *
root = Tk()
GIRLS = ["西施",'王昭君','貂蝉','杨玉环']
v = []
for girl in GIRLS:
v.append(IntVar)
b = Checkbutton(root,text = girl,variable=v[-1])
b.pack()
mainloop()
***************************************************Radiobutton组件*****************************************************
from tkinter import *
root = Tk()
v=IntVar()
Radiobutton(root,text="One",variable=v,value=1).pack(anchor=W)#pack(anchor=W)左对齐
Radiobutton(root,text="Twe",variable=v,value=2).pack(anchor=W)
Radiobutton(root,text="Three",variable=v,value=3).pack(anchor=W)
mainloop()
from tkinter import *
root = Tk()
LANGS = [
('python',1),
('Perl',2),
('Ruby',3),
('Lua',4)
]
v = IntVar()
v.set(2)#2代表圆圈在第二个选择上面
for lang,num in LANGS:
b = Radiobutton(root,text = lang,variable=v,value=num)
b.pack(anchor=W)
mainloop()
from tkinter import *
root = Tk()
LANGS = [
('python',1),
('Perl',2),
('Ruby',3),
('Lua',4)
]
v = IntVar()
v.set(2)#2代表圆圈在第二个选择上面
for lang,num in LANGS:
b = Radiobutton(root,text = lang,variable=v,value=num,indicatoron=False)
b.pack(fill=X)#fill = (X,Y,BOTH)
mainloop()
***************************************************LabelFrame组件*****************************************************
from tkinter import *
root = Tk()
group = LabelFrame(root,text="最好的语言是:",padx=5,pady=5)
group.pack(padx=5,pady=5)
LANGS = [
('python',1),
('Perl',2),
('c++',3),
('c语言',4)]
v = IntVar()
v.set(1)
for lang,num in LANGS:
b = Radiobutton(group,text=lang,variable=v,value=num)
b.pack(anchor=W)
mainloop()
from tkinter import *
root = Tk()
e = Entry(root)
e.pack(padx=20,pady=20)
e.delete(0,END)
e.insert(0,"默认文本...")
mainloop()
from tkinter import *
root = Tk()
Label(root,text="作品: ").grid(row=0)
Label(root,text="作者: ").grid(row=1)
e1 = Entry(root)
e2 = Entry(root)
e1.grid(row=0,column=1,padx=10,pady=5)
e2.grid(row=1,column=1,padx=10,pady=5)
def show():
print("作品:《%s》"%e1.get())
print("作者:《%s》"%e2.get())
e1.delete(0,END)
e2.delete(0,END)
Button(root,text="获取信息",width=10,command=show)\
.grid(row=3,column=0,sticky=W,padx=1,pady=5)
Button(root,text="退出",width=10,command=root.quit)\
.grid(row=3,column=1,sticky=E,padx=10,pady=5)
mainloop()
from tkinter import *
root = Tk()
Label(root,text="作品: ").grid(row=0)
Label(root,text="作者: ").grid(row=1)
v1 = StringVar()
v2 = StringVar()
e1 = Entry(root,textvariable=v1)
e2 = Entry(root,textvariable=v2,show="*")
e1.grid(row=0,column=1,padx=10,pady=5)
e2.grid(row=1,column=1,padx=10,pady=5)
def show():
print("作品:《%s》"%e1.get())
print("作者:《%s》"%e2.get())
e1.delete(0,END)
e2.delete(0,END)
Button(root,text="获取信息",width=10,command=show)\
.grid(row=3,column=0,sticky=W,padx=1,pady=5)
Button(root,text="退出",width=10,command=root.quit)\
.grid(row=3,column=1,sticky=E,padx=10,pady=5)
mainloop()
from tkinter import *
root = Tk()
def test():
if a.get() == "小甲鱼":
print("yes")
return True
else:
print("no")
return False
def test2():
print('我被调用了')
v = StringVar()
a = Entry(root,textvariable=v,validate="focusout",validatecommand=test,invalidcommand=test2)
a1=Entry(root)
a.pack(padx=10,pady=10)
a1.pack(padx=10,pady=10)
mainloop()
from tkinter import *
root = Tk()
v = StringVar()
def test(content,reason,name):
if content == "小甲鱼":
print('yes')
print(content,reason,name)
return True
else:
print("no")
print(content, reason, name)
return False
testCMD = root.register(test)
a = Entry(root,textvariable=v,validate="focusout",validatecommand=(testCMD,'%P','%v','%W'))
a1=Entry(root)
a.pack(padx=10,pady=10)
a1.pack(padx=10,pady=10)
mainloop()
from tkinter import *
root = Tk()
frame = Frame(root)
frame.pack(padx=10,pady=10)
v1 = StringVar()
v2 = StringVar()
v3 = StringVar()
def test(content):
if str(content).isdigit():
return True
else:
return False
testCMD = root.register(test)
Entry(frame,textvariable = v1,width=10,validate="key",
validatecommand=(testCMD,'%P')).grid(row=0,column=0)
Label(frame,text="+").grid(row=0,column=1)
Entry(frame,textvariable = v2,width=10,validate="key",
validatecommand=(testCMD,'%P')).grid(row=0,column=2)
Label(frame,text="=").grid(row=0,column=3)
Entry(frame,textvariable = v3,width=10,validate="key",
validatecommand=(testCMD,'%P')).grid(row=0,column=4)
def calc():
result = int(v1.get())+int(v2.get())
v3.set(result)
Button(frame,text="计算结果",command=calc).grid(row=1,column=0,pady=5)
Button(frame,text="退出",command=root.quit).grid(row=1,column=4,pady=5)
mainloop()
from tkinter import *
root = Tk()
frame = Frame(root)
frame.pack(padx=10,pady=10)
v1 = StringVar()
v2 = StringVar()
v3 = StringVar()
def text(command,v):
if str(command).isdigit():
return True
else:
print("请输入数字")
return False
testCMD = root.register(text)
Entry(frame,textvariable=v1,width=10,validate="key",validatecommand=(testCMD,'%P')).grid(row=0,column=0)
Label(frame,text="+").grid(row=0,column=1)
Entry(frame,textvariable=v2,width=10,validate="key",validatecommand=(testCMD,'%P')).grid(row=0,column=2)
Label(frame,text="+").grid(row=0,column=3)
Entry(frame,textvariable=v3,width=10,validate="key",validatecommand=(testCMD,'%P')).grid(row=0,column=4)
def calc():
v3.set(int(v1.get())+int(v2.get()))
Button(frame,text="计算结果",command=calc).grid(row = 1,column=0)
Button(frame,text="退出",command=root.quit).grid(row = 1,column=4)
mainloop()
***************************************************Listbox组件*****************************************************
from tkinter import *
'''
Listbox组件根据selectmode选项提供了四种不同的选择模式:SINGLE(单选)
BROWSE(也是单选,但推动鼠标或通过方向键可以直接改变选项)
MULTIPLE(多选)和EXTENDED(也是多选,但需要同时按住Shift和Ctrl或拖动鼠标实现
),默认是BROWSE
'''
root = Tk()
#height=11设置listbox组件的高度,默认是10行。
lb = Listbox(root, selectmode=EXTENDED, height=6)
lb.pack()
for item in ['公鸡','母鸡','小鸡','火鸡','战斗机',]:
# END表示每插入一个都是在最后一个位置
lb.insert(END,item)
bt = Button(root, text='删除', command=lambda x=lb:x.delete(ACTIVE))
bt.pack()
mainloop()
from tkinter import *
root = Tk()
ld = Listbox(root,selectmode=EXTENDED,height=7)
ld.grid(row=0,column=2)
for item in ['公鸡','母鸡','小鸡','火鸡','战斗机',]:
ld.insert(END,item)
bt = Button(root,text="删除",command=lambda x=ld:x.delete(0,END))#删除所有内容
bt = Button(root,text="删除",command=lambda x=ld:x.delete(ACTIVE))#一次删除一个
bt.grid(row=1,column=0)
bt_1 = Button(root,text="退出",command=root.quit)
bt_1.grid(row=1,column=4)
mainloop()
***************************************************Scrollbar组件*****************************************************
python 我的Tkinter笔记
猜你喜欢
转载自blog.csdn.net/weixin_45949073/article/details/106219382
今日推荐
周排行