課時35:圖形用戶界面入門
目錄:
一、安裝GUI工具包:EasyGui
二、導入EasyGui
三、使用EasyGui
四、修改默認設置
五、課時35課後習題及答案
***********************************
一、安裝GUI工具包:EasyGui
***********************************
本章介紹的是圖形用戶界面編程,也就是平時所說的GUI(讀作【gu:i】)編程,那些帶有按鈕、文本、輸入框的窗口的編程,相信大夥都不會陌生。
目前有很多Python的GUI工具包可供選擇,Python有一個非常簡單的GUI工具包:EasyGui。EasyGui跟它的名字一樣的簡單,一旦你的模塊導入了EasyGui,GUI操作就是一個簡單地調用EasyGui函數的幾個參數的問題了。
EasyGui官網:http://easygui.sourceforge.net
使用標準方法安裝:
第一步:解壓easygui-0.96.zip
第二步:使用命令窗口切換到easygui-docs-0.96的目錄下。
第三步:在windows下執行 C:\Python34\python.exe setup.py install
在Linux或Mac下執行 sudo /usr/bin/python34 setup.py install
(命令的前面部分是python程序在電腦上的安裝路徑,自行進行修改)
windows下的安裝界面如下圖所示:
********************
二、導入EasyGui
********************
為了使用這個Easygui這個模塊,你應該先導入它。最簡單的導入語句是 import easygui。
如果用這種導入方式的話,那麽在使用easygui的函數時候,必須在函數的前面加上前綴easygui:
>>> import easygui >>> easygui.msgbox("DC love ZWW")
回車後即彈出消息框,如圖所示:
另一種選擇是導入整個Easygui包:from easygui import *,這樣使得我們更容易調用Easygui的函數,可以直接這樣編寫代碼:
>>> from easygui import * >>> msgbox("DC love ZWW")
第三種方案是使用類似下邊的import語句(建議使用):import easygui as g,這樣可以讓你保持Easygui的命名空間,同時減少輸入字符的數量:
>>> import easygui as g >>> g.msgbox("DC love ZWW")
********************
三、使用EasyGui
********************
舉一個簡單的例子:
import easygui as g import sys while 1: g.msgbox ("嗨,歡迎進入第一個界面小遊戲") msg = "請問你希望學到什麽知識呢?" title = "遊戲小互動" choices = ["談戀愛","編程","demo","琴棋書畫"] choices = g.choicebox(msg,title,choices) g.msgbox("您的選擇是:"+str(choices),"結果") msg = "你希望重新開始小遊戲嗎?" title = "請選擇" if g.ccbox(msg,title): pass else: sys.exit(0)
*********************
四、修改默認設置
*********************
默認情況下顯示的對話框會很大,而且字體也相對難看。這裏可以手動調整EsayGui的參數修改。
修改位置為 C:\Python34\Lib\site-packages\easygui.py。
更改對話框尺寸:找到def _ _choicebox,下邊的 root_width = int((screen_width * 0.8))和 root_height = int((screen_height * 0.5))分別改為root_width = int((screen_width * 0.4))和 root_height = int((screen_height * 0.25))
EasyGui提供了非常多的組件供我們實現一個完整的界面程序,剛才演示了 msgbox、choicebox和ccbox的用法。關於更多的組建使用,大家可以參考小甲魚翻譯的《EasyGui學習文檔》:http://bbs.fishc.com/thread-46069-1-1.html
*******************************
五、課時35課後習題及答案
*******************************
課時35:圖形用戶界面入門