作者:妖孽哪里走㍿
如何使用Python表白
先看效果图
一、具体步骤
1.首先我们要安装tkinter库
pip install tkinter
等待安装完成即可
2.使用步骤引入库
from tkinter import *from tkinter import messageboximport smtplib
3.先建立一个窗口并且设置窗口的参数
window = Tk()#设置窗口大小,宽x高window.geometry('350x200')#设置窗口的位置,基于屏幕的坐标 相对位置+x轴+y轴window.geometry("+650+250")#设置窗口的标题window.title('我帅吗?')#设置标签a = Label(window,text='小朋友',font=('微软雅黑',15))#网格式的显示 默认第0行第0列a.grid()b = Label(window,text='我是不是很帅呢?',font=('微软雅黑',15))#网格式的显示 设置行列,上下左右对齐方式N S W E 这里靠左#因为grid是网格的方法,所以分为行列,这里放到第一行第一列b.grid(row=1,column=1,sticky=W)#设置循环,不然窗口无法显示出来window.mainloop()
注:设置循环很重要,不然窗口是无法显示出来
4.制作关窗点击事件
def closewindow(): #messagebox.showinfo()出现一个提示框,title标题,message显示的信息 messagebox.showinfo(,message='不许关闭,好好回答')window.protocol("WM_DELETE_WINDOW",closewindow)
5.设置按钮
#第一个按钮,宽高,点击之后会触发command的new方法btn1 = Button(window,text='帅气',font=('微软雅黑',18),command=new)btn1.grid(row=4,column=1,sticky=W)#第二个按钮btn2 = Button(window,text='不帅',font=('微软雅黑',18),command=two)btn2.grid(row=4,column=2,sticky=W)
6.创建新的子窗口
def new(): # Toplevel是一个独立的窗口, TK已经是最大的窗口了,所有的窗口都在tk下 love =Toplevel(window) love.geometry('300x150+800+450') label = Label(love,text='我觉得你也很漂亮哦',font=('微软雅黑',24)) #类似grid() label.pack() btn = Button(love,text='确定',width=10,height=2,command=like) btn.pack()
注:上述的是博主给的格式,只做参考。文章最后会附上完整的代码
7.你们最想要的完整代码来了
from tkinter import *from tkinter import messageboximport smtplibwindow = Tk()#设置窗口大小,宽x高window.geometry('350x200')#设置窗口的位置,基于屏幕的坐标 相对位置+x轴+y轴window.geometry("+650+250")#设置窗口的标题window.title('我帅吗?')#设置标签a = Label(window,text='小朋友',font=('微软雅黑',15))#网格式的显示 默认第0行第0列a.grid()b = Label(window,text='我是不是很帅呢?',font=('微软雅黑',15))#网格式的显示 设置行列,上下左右对齐方式N S W E 这里靠左b.grid(row=1,column=1,sticky=W)#新窗口def new(): # Toplevel是一个独立的窗口, TK已经是最大的窗口了,所有的窗口都在tk下 love =Toplevel(window) love.geometry('300x150+800+450') label = Label(love,text='我觉得你也很漂亮哦',font=('微软雅黑',24)) #类似grid() label.pack() btn = Button(love,text='确定',width=10,height=2,command=like) btn.pack()#点击帅气触发def like(): like =Toplevel(window) #创建一个对话框,属于window like.geometry('300x150+800+450') #设置窗口大小和位置 label = Label(like,text='加个微信呗~',font=('微软雅黑',24)) #显示的文字 label.pack() #entry和文本框一样,它可以将输入的东西显示成某个字符, entry = Entry(like,font=('微软雅黑',24),fg='red') entry.pack() global text text=entry.get() btn = Button(like,text='确定',width=10,height=2,command=jiaweix) btn.pack() print(text)#加微信def jiaweix(): jia = Toplevel(window) jia.geometry('300x150+800+500') jia.title('一定要加哦') c = Label(jia,text='15207938429',font=('微软雅黑',15)) c.pack() btn3 =Button(jia,text='不加是小狗',width=10,height=2,command=colssweind) btn3.pack()#关闭所有窗口def colssweind(): window.destroy()#新建第二个窗口def two(): dislove =Toplevel(window) dislove.geometry('300x150+800+450') Label2=Label(dislove,text='再给你一次机会',font=('微软雅黑',20)) Label2.pack() but4=Button(dislove,text="好的吧",font=('微软雅黑',15),command=dislove.destroy) but4.pack(side=LEFT) but5=Button(dislove,text='不需要',font=('微软雅黑',15),command=three) but5.pack(side=RIGHT)def three(): dislove =Toplevel(window) dislove.geometry('300x150+800+500') Label2=Label(dislove,text='回答错误,再来',font=('微软雅黑',20)) Label2.pack() but4=Button(dislove,text="你真帅",font=('微软雅黑',15),command=dislove.destroy) but4.pack(side=LEFT) but5=Button(dislove,text='我不来',font=('微软雅黑',15),command=four) but5.pack(side=RIGHT)def four(): dislove =Toplevel(window) dislove.geometry('300x150+800+550') Label2=Label(dislove,text='再皮老子锤死你',font=('微软雅黑',20)) Label2.pack() but4=Button(dislove,text="你真帅",font=('微软雅黑',15),command=dislove.destroy) but4.pack(side=LEFT) but5=Button(dislove,text='我不怂',font=('微软雅黑',15),command=five) but5.pack(side=RIGHT)def five(): dislove =Toplevel(window) dislove.geometry('300x150+800+600') Label2=Label(dislove,text='好了,你没机会了',font=('微软雅黑',20)) Label2.pack() but4=Button(dislove,text="你真帅",font=('微软雅黑',15),command=dislove.destroy) but4.pack()#设置两个按钮#第一个按钮,宽高,点击之后会触发command的new方法btn1 = Button(window,text='帅气',font=('微软雅黑',18),command=new)btn1.grid(row=4,column=1,sticky=W)#第二个按钮btn2 = Button(window,text='不帅',font=('微软雅黑',18),command=two)btn2.grid(row=4,column=2,sticky=W)#制作关窗点击事件def closewindow(): #messagebox.showinfo()出现一个提示框,title标题,message显示的信息 messagebox.showinfo(,message='不许关闭,好好回答')window.protocol("WM_DELETE_WINDOW",closewindow)#设置循环,不然窗口无法显示出来window.mainloop()