點不掉的彈窗,給女票的,可做表白
阿新 • • 發佈:2021-06-10
效果就是隻能點好的,不能點×,也不能點算了吧,點×點不掉這個彈窗,點算了吧,會一直在這個介面。
# Tkinter是Python的標準GUI(圖形使用者介面)庫 ,Python使用Tkinter可以快速的建立GUI應用程式 from tkinter import * from tkinter import messagebox from PIL import Image, ImageTk a = 0 b = 0 def closeWindow(): global b b += 1 if b == 1: messagebox.showinfo(message="寶貝再考慮考慮唄") if b == 2: messagebox.showinfo(message="親愛的,點不掉哦") if b == 3: b = 0 messagebox.showinfo(message="小可愛,點我沒用哦,要點‘好的’") def closeLove(): return 0 def closeAllWindow(): window.destroy() # destroy是登出 def closeNoLove(): noLove() def Love(): # 點選喜歡觸發的方式 # 頂級視窗 love = Toplevel(window) love.geometry("300x100+520+260") love.title("") label = Label(love, text="我就知道你會同意的^-^", font=("微軟雅黑", 18)) label.pack() btn = Button(love, text="確定", command=closeAllWindow, width=10, height=2) btn.pack() love.protocol('WM_DELETE_WINDOW', closeLove) def noLove(): global a a = a + 1 no_love = Toplevel(window) no_love.geometry("300x100+520+260") no_love.title("") if a == 1: label = Label(no_love, text="我媽會游泳", font=("微軟雅黑", 15)) label.pack() btn = Button(no_love, text="好的", width=10, height=2, command=no_love.destroy) btn.pack() if a == 2: label = Label(no_love, text="保大", font=("微軟雅黑", 15)) label.pack() btn = Button(no_love, text="好的", width=10, height=2, command=no_love.destroy) btn.pack() if a == 3: label = Label(no_love, text="房產寫你名字", font=("微軟雅黑", 15)) label.pack() btn = Button(no_love, text="好的", width=10, height=2, command=no_love.destroy) btn.pack() if a == 4: a = 1 label = Label(no_love, text="我媽會游泳", font=("微軟雅黑", 15)) label.pack() btn = Button(no_love, text="好的", width=10, height=2, command=no_love.destroy) btn.pack() window = Tk() # Tk是一個類 window.title("來自一位超級喜歡你的小哥哥") # 視窗標題 window.geometry('380x270') # 視窗大小 window.geometry('+500+240') # 視窗位置 # 標籤控制 label = Label(window, text="xx小姐姐,\n我觀察你很久了\n做我女朋友好不好", font=("微軟雅黑", 15), justify=LEFT, padx=10) label.grid(row=0, sticky=W, column=0) # 按鈕控制,command作為點選觸發的事件 btn = Button(window, text="好的", width=15, height=2, command=Love) #第一個按鈕 btn.grid(row=2, column=0, sticky=W, padx=30) btn1 = Button(window, text="算了吧", width=15, height=2, command=noLove) #第二個按鈕 btn1.grid(row=2, column=1, sticky=E, padx=5) # 顯示圖片, 通過PIL開啟圖片,通過PIL來生成PhotoImage物件,即可正常載入 size = (200, 200) # 期望影象顯示的大小 img = Image.open('love.png') # 以一個PIL影象物件開啟 img_resized = img.resize(size, Image.ANTIALIAS) # 縮放影象為size大小 photo = ImageTk.PhotoImage(img_resized) # 把PIL影象物件轉變為Tkinter的PhotoImage物件 imageLabel = Label(window, image=photo, justify=RIGHT) # columnspan:元件所跨的列數 imageLabel.grid(row=0, column=1, rowspan=2, columnspan=3, sticky=E, pady=5) window.protocol("WM_DELETE_WINDOW", closeWindow) # protocol() 使用者關閉視窗觸發的事件 window.mainloop() # 顯示視窗,也叫訊息迴圈