1. 程式人生 > >Python實現抖音表白軟體

Python實現抖音表白軟體

本來是在看高數公眾號上的題目的,無意間看到了置頂的python公眾號釋出的說教人寫抖音表白軟體的訊息,瞬間就想學一下了。

看完教程才知道,哇,這就是個不正經的軟體的(一般稱為流氓軟體),就是不讓你關閉視窗,非得回答可以才能關閉視窗,不然那個視窗就一直卡在那裡,但是別人稍微懂一點電腦的就會用工作管理員關就沒有什麼辦法了。

開發環境  : Win10 + sublime

這裡用到的模組是tkinter,是python自帶的,所以無需進行pip下載

# tkinter是python標準TK GUI工具包的介面
import tkinter as tk
# 這個是用來彈出提示框的
import tkinter.messagebox

然後建立一個視窗,並讓視窗顯示在螢幕上

# 建立視窗
window = tk.Tk()

# 設定視窗標題
window.title("my window")

# 設定視窗大小以及窗口出現的位置(函式中前兩個引數表示視窗大小,後兩個表示窗口出現的位置,第一個加號用來連線)
window.geometry("380x400+750+330")

# 避免視窗快速消失,使用迴圈顯示視窗
window.mainloop()

接下來就是程式需要實現的功能 :

# 關閉窗口出發的事件
def closewindow():
    tkinter.messagebox.showinfo("警告", "禁止關閉")


# 點選可以的時候彈出視窗的資訊
def Yes():
    yes = tk.Toplevel(window)
    yes.geometry("280x100+800+450")
    yes.title("YEAH")
    label = tk.Label(yes, text="我也是這麼想的", font=("楷體", 18)).pack()
    btn = tk.Button(yes, text="確定", font=("楷體", 15),
                    width=3, height=1, command=close).pack()
    yes.protocol("WM_DELETE_WINDOW", close_yes)


# 點選不可以彈出的視窗資訊
def No():
    no = tk.Toplevel(window)
    no.geometry("280x100+800+450")
    no.title("OH NO")
    label = tk.Label(no, text="再考慮一下唄~", font=("楷體", 18)).pack()
    btn = tk.Button(no, text="確定", font=("楷體", 15),
                    width=3, height=1, command=no.destroy).pack()
    no.protocol("WM_DELETE_WINDOW", close_no)


# 迴圈呼叫,使關閉視窗無效
def close_no():
    No()


# 禁止關閉視窗的函式
def close_yes():
    return


# 回答 可以 + 確定 後,關閉視窗
def close():
    window.destroy()


# 使用者點選關閉觸發的方法
window.protocol("WM_DELETE_WINDOW", closewindow)

# label1 = tk.Label(window, text="Hey , 二狗子",
#                   font=("微軟雅黑", 15), fg="black").pack()

# 標籤控制元件
label2 = tk.Label(window, text="Hello World", font=("楷體", 18), bg="red",
                  fg="black").pack()

# 找到圖片位置
photo = tk.PhotoImage(file='cc.png')

# 將圖片新增到視窗中,並居中
imageLabel = tk.Label(window, image=photo).pack()


# 新增按鈕
btn1 = tk.Button(window, text="可以", font=(
    "楷體", 18), activebackground="red", command=Yes).pack()
btn2 = tk.Button(window, text="不可以", font=("楷體", 10),
                 activebackground="green", command=No).pack()

以上就是這個表(liu)白(mang)軟體的所有程式碼,有興趣可以整合跑一下。

最後還有一個打包的過程,可以直接pip下載pyinstaller,用下面的命令進行打包,打包後的檔案字尾為.exe

#xx是你python檔案的名稱
pyinstaller -F -w xx.py