button
from tkinter import *root = Tk()
root.title("居中的窗口")
screenWidth = root.winfo_screenwidth()# 获取显示区域的宽度
screenHeight = root.winfo_screenheight()# 获取显示区域的高度
width = 600# 设定窗口宽度
height = 400# 设定窗口高度
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
# 宽度x高度+x偏移+y偏移
# 在设定宽度和高度的基础上指定窗口相对于屏幕左上角的偏移位置
root.geometry("%dx%d+%d+%d" % (width, height, left, top))
def love():
master = Toplevel()
master.title("居中的窗口")
screenWidth = master.winfo_screenwidth()
screenHeight = master.winfo_screenheight()
width = 600
height = 500
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
master.geometry("%dx%d+%d+%d" % (width, height, left, top))
w = Label(master, image=lphoto)
w.pack()
Button(master,text='确定',command=master.quit).pack()
mainloop()
def dislove():
master = Toplevel()
# disphoto = PhotoImage(file=r"E:\P.py\课堂练习.py\tkinter\眼瞎.png")
# textlabel=Label(master,text='你怕是眼瞎').pack()
master.title("让你认清自己!!!")
screenWidth = master.winfo_screenwidth()
screenHeight = master.winfo_screenheight()
width = 600
height = 380
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
master.geometry("%dx%d+%d+%d" % (width, height, left, top))
w = Label(master, image=disphoto)
w.pack()
Button(master,text='确定',command=master.quit).pack()
mainloop()
textlable = Label(root,text='祢豆子真漂亮')
textlable.pack()
lphoto = PhotoImage(file=r"E:\P.py\课堂练习.py\tkinter\喜欢.png")
disphoto = PhotoImage(file=r"E:\P.py\课堂练习.py\tkinter\眼瞎.png")
photo = PhotoImage(file=r"E:\P.py\课堂练习.py\tkinter\1.png")
w = Label(root, image=photo)
w.pack()
button1=Button(root,text='喜欢',command=love)
button2=Button(root,text='不喜欢',command=dislove)
button1.pack()
button2.pack()
mainloop()
为啥love和第三love的窗口需要点击两下button才能生效 因为你用了两个 mainloop() 这样即可:
from tkinter import *
root = Tk()
root.title("居中的窗口")
screenWidth = root.winfo_screenwidth()# 获取显示区域的宽度
screenHeight = root.winfo_screenheight()# 获取显示区域的高度
width = 600# 设定窗口宽度
height = 400# 设定窗口高度
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
# 宽度x高度+x偏移+y偏移
# 在设定宽度和高度的基础上指定窗口相对于屏幕左上角的偏移位置
root.geometry("%dx%d+%d+%d" % (width, height, left, top))
def love():
master = Toplevel()
master.title("居中的窗口")
screenWidth = master.winfo_screenwidth()
screenHeight = master.winfo_screenheight()
width = 600
height = 500
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
master.geometry("%dx%d+%d+%d" % (width, height, left, top))
w = Label(master, image=lphoto)
w.pack()
Button(master, text='确定', command=master.quit).pack()
def dislove():
master = Toplevel()
# disphoto = PhotoImage(file=r"E:\P.py\课堂练习.py\tkinter\眼瞎.png")
# textlabel=Label(master,text='你怕是眼瞎').pack()
master.title("让你认清自己!!!")
screenWidth = master.winfo_screenwidth()
screenHeight = master.winfo_screenheight()
width = 600
height = 380
left = (screenWidth - width) / 2
top = (screenHeight - height) / 2
master.geometry("%dx%d+%d+%d" % (width, height, left, top))
w = Label(master, image=disphoto)
w.pack()
Button(master, text='确定', command=master.quit).pack()
textlable = Label(root, text='祢豆子真漂亮')
textlable.pack()
lphoto = PhotoImage(file=r"1.png")
disphoto = PhotoImage(file=r"1.png")
photo = PhotoImage(file=r"1.png")
w = Label(root, image=photo)
w.pack()
button1 = Button(root, text='喜欢', command=love)
button2 = Button(root, text='不喜欢', command=dislove)
button1.pack()
button2.pack()
mainloop() Twilight6 发表于 2020-5-19 23:53
因为你用了两个 mainloop()
mainloop() 只留最后一个即可 Twilight6 发表于 2020-5-19 23:55
mainloop() 只留最后一个即可
ok,我试试{:10_256:} 君子好逑 发表于 2020-5-20 09:41
ok,我试试
对了忘记告诉你弥豆子 和 恋柱 都是我老婆{:10_297:}{:10_281:} Twilight6 发表于 2020-5-20 09:44
对了忘记告诉你弥豆子 和 恋柱 都是我老婆
???我有点蒙,大佬 Twilight6 发表于 2020-5-20 09:44
对了忘记告诉你弥豆子 和 恋柱 都是我老婆
这种带隐藏的怎么打出来??? Twilight6 发表于 2020-5-20 09:44
对了忘记告诉你弥豆子 和 恋柱 都是我老婆
咱们各论各的{:10_256:} 君子好逑 发表于 2020-5-20 09:54
这种带隐藏的怎么打出来???
把字体颜色变白即可
刮刮卡:你好像也是福建的? 君子好逑 发表于 2020-5-20 09:55
咱们各论各的
用鼠标刮开可以看得见字 Twilight6 发表于 2020-5-20 09:55
把字体颜色变白即可
刮刮卡:你好像也是福建的?
不懂,嘿嘿嘿,一会下课我试试 君子好逑 发表于 2020-5-20 09:56
不懂,嘿嘿嘿,一会下课我试试
Button 问题应该已经解决了,记得给个最佳哈哈
把文字颜色,和字体背景颜色设置同种即可 Twilight6 发表于 2020-5-19 23:54
这样即可:
大佬,我想让程序循环起来,有什么好的方法吗 君子好逑 发表于 2020-5-20 10:48
大佬,我想让程序循环起来,有什么好的方法吗
command=master.destroy
不用quit quit 是直接把根窗口退了 Twilight6 发表于 2020-5-20 10:56
不用quit quit 是直接把根窗口退了
这是什么原理???为什么root窗口一直没退??? 君子好逑 发表于 2020-5-20 11:00
这是什么原理???为什么root窗口一直没退???
destroy是隐藏或者销毁组件的意思,在你代码中销毁的组件是顶层窗口组件,你在root重新点击就重新生成顶层窗口,你点确定又销毁 Twilight6 发表于 2020-5-20 11:02
destroy是隐藏或者销毁组件的意思,在你代码中销毁的组件是顶层窗口组件,你在root重新点击就重新生成顶 ...
懂了{:10_256:} 君子好逑 发表于 2020-5-20 11:07
懂了
{:10_297:}欢迎继续发帖提问~~ Twilight6 发表于 2020-5-20 11:09
欢迎继续发帖提问~~
必须啊,作为菜逼选手就只能请求场外援助啊{:10_256:}
页:
[1]
2