Python GUI 編程,看完這一篇你就會了

easygui

Python 的 GUI 編程,這裏用的是 easygui ,完成一些簡單的圖形化界面開發。
基本組件:

__all__ = ['buttonbox',
           'diropenbox',
           'fileopenbox',
           'filesavebox',
           'textbox',
           'ynbox',
           'ccbox',
           'boolbox',
           'indexbox',
           'msgbox',
           'integerbox',
           'multenterbox',
           'enterbox',
           'exceptionbox',
           'choicebox',
           'codebox',
           'passwordbox',
           'multpasswordbox',
           'multchoicebox',
           'EgStore',
           'eg_version',
           'egversion',
           'abouteasygui',
           'egdemo',
]

easygui API文檔

這裏直接給個 demo 看一看,然後把下面 demo 代碼拉下來,本地跑一跑,修改修改,運行下上手妥妥的。

demo

import easygui as g
import sys

class easyDemo:
    def guifun(self):
        loginStatus = False
        g.msgbox(msg="歡迎使用npc機器人,請先使用npc賬號登陸~~ \n\n\n\n\n\n\n\n\n\n\n\n如有問題,請聯繫xxx",title="npc機器人")
        while not loginStatus:
            mulRes = g.multpasswordbox('請輸入您的賬號密碼', '商品盤點登錄框', ('帳號', '密碼'))
            if mulRes is None:
                sys.exit(0)
            if mulRes[0] == '' or mulRes[1] == '':
                g.msgbox('請輸入完整的賬號密碼', ok_button="確定", title="提醒")
                continue
            account = mulRes[0]
            password = mulRes[1]
            #拿着賬號密碼驗權
            if account == 'admin' and password == 'admin':
                g.msgbox('帳號:  ' + account + '登陸成功', ok_button="下一步",title="登陸結果")
                loginStatus = True
            else:
                g.msgbox('帳號:  ' + account + '登陸失敗', ok_button="重新登陸")

        userName = 'Npc'


        # g.msgbox("顯示一個窗口並且顯示這些文字")# 只顯示一個對話框並且只有一個ok
        msg= userName + "歡迎使用npc機器人,請選擇你要做的事情?"
        title="npc機器人"       # 在左上角的 標題曠裏面
        choices=['打印二維碼','查詢我的商品','查看詳情','幫助']  # 在選擇框內 , 提供可選擇項
        choice=g.choicebox(msg,title,choices) #  在這裏 choice 可以得到上面你選擇的那個選項
        if choice is None:
            sys.exit(0)

        g.msgbox("你的選擇是:"+str(choice),title="npc機器人",ok_button="下一步") # 打印出來

        viewType = ['查看全部', '未打印商品', '單條商品']
        viewChose = g.choicebox(msg='請選擇你要打印的方式',choices=viewType,title="npc機器人")
        if viewChose is None:
            sys.exit(0)
        if viewChose == '單條商品':
            # 輸入商品編號
            goodCode = g.enterbox('請輸入商品編號:',title='npc機器人')
            if goodCode:
                g.msgbox("正在搜索:" + str(goodCode), '結果', ok_button="下一步")  # 打印出來
                mutiSelect = g.choicebox(msg='搜索結果', choices=[goodCode],title='npc機器人')
        else:
            #獲取 列表內容
            # 這裏demo 就用一些測試數據
            vedio_list = [1,2,3,4343,2]
            mutiSelect = g.multchoicebox(msg='請勾選您要打印的商品條目 -- 767條' ,choices=vedio_list,title="npc機器人")
            if mutiSelect is None:
                sys.exit(0)
        msgRes = g.msgbox('請選擇文件夾保存路徑', ok_button="下一步",title="npc機器人")
        if msgRes is None:
            g.msgbox('未選擇,保存失敗', ok_button="完成", title="npc機器人")
            sys.exit(0)

        dir_path = g.diropenbox()
        print(dir_path)
        ## 後續操作

if __name__ == '__main__':
    S = easyDemo()
    S.guifun()

windows 下 python 腳本轉exe

  1. 安裝 pyinstaller PyInstaller-3.4.tar.gz
  2. 放到 你電腦 python 根目錄 C:\Users\19039210\AppData\Local\Programs\Python\Python37PyInstaller-3.4 文件夾中
  3. 記得修改 pyinstall 源碼中 winmain.py 編碼格式utf8 C:\Users\19039210\AppData\Local\Programs\Python\Python37\Lib\site-packages\PyInstaller-3.4-py3.7.egg\PyInstaller\utils\win32\winmanifest.py
    1075 行 爲
with open(filename,encoding="UTF-8") as f:
  1. 使用命令 pyinstaller --onefile demo.py 運行即可生成 exe ,注意路徑 等處理

效果如下,會保存在當前腳本 的同層生成一個 dist 文件夾 的目錄下
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章