Python學習_任務11_GUI編程簡單示例

GUI是最具有交互性的程序作品之一,Python實現各種窗體程序還是比較方便的:

# - Tutorial 11
# - 2020-2-8
# - Johan
# - 題目:
#   1、窗體界面實現簡單文本處理

from tkinter import *
import sys


# 自定義類用於窗體顯示
class MyWindow:
    __rmb = '0'
    __yen = '0'
    entry_rmb = None
    entry_yen = None
    var = None

    # 在構造函數中創建窗體和控件
    def __init__(self):
        # 創建窗體
        window = Tk()
        window.title('中日匯率換算')  # 窗體左上角標題
        window.geometry('240x140')  # 窗體長寬尺寸

        var = StringVar()

        # 菜單欄
        menu_bar = Menu(window)
        window.config(menu=menu_bar)
        menu_operate = Menu(window)
        menu_bar.add_cascade(label='操作', menu=menu_operate)
        menu_operate.add_command(label='計算',
                                 command=lambda: self.func_Calculate(var.get()))
        menu_operate.add_separator()  # 分割線
        menu_operate.add_command(label='退出', command=self.func_Exit)

        # 框架
        frame = Frame(window)
        frame.pack(fill=X)

        # 人民幣輸入區
        label_rmb = Label(frame, text='人民幣:')
        label_rmb.grid(row=1, column=0)
        self.entry_rmb = Entry(frame, textvariable=var)
        self.entry_rmb.grid(row=1, column=1)

        # 日元輸入區
        label_yen = Label(frame, text='日元:')
        label_yen.grid(row=2, column=0)
        self.entry_yen = Entry(frame)
        self.entry_yen.grid(row=2, column=1)

        # 計算按鈕
        button = Button(frame, text='開始換算',
                        command=lambda: self.func_Calculate(var.get()))
        button.grid(row=3, column=0)

        window.mainloop()

    # 計算公式
    def func_Calculate(self, value):
        self.__rmb = '%s' % value
        self.__yen = '%f' % (float(value) * 15.7354)
        self.entry_yen.delete(0, END)
        self.entry_yen.insert(0, self.__yen)

    # 退出程序
    def func_Exit(self):
        sys.exit(0)


# 創建窗體,運行程序
try:
    MyWindow()
except Exception as e:
    print('Error:%s' % e)

運行結果:

把這個程序打包也比較方便,在cmd中進行,找到源文件的目錄,在目錄中打開CMD(直接在目錄欄中輸入cmd然後回車)

在控制檯輸入pyinstaller -w xxx.py即可打包,此處不考慮圖標等,打包方式很多,這種方式下運行程序不會出現控制檯窗口

沒有pyinstaller的在CMD輸入pip installer pyinstaller安裝這個包

打包好以後在dist目錄下找exe文件,點擊即可使用,這種打包方式的附帶文件很多,至於移植性怎麼樣還沒試

比起java的GUI,Python弄這個確實相對容易些,當然弄不好時bug也巨多

 

 

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