1. 程式人生 > >python學習之easygui 庫簡介

python學習之easygui 庫簡介

庫函式介紹:

easygui 庫官方連結http://easygui.sourceforge.net/ 點選開啟連結

easygui庫下載連結:http://download.csdn.net/detail/wuce_bai/9456715點選開啟連結

安裝教程:

1.下載好的 “easygui-0.96” 檔案放到桌面;

2.執行cmd 進入windows命令視窗,輸入“cd Desktop” 進入桌面,輸入命令“cd easygui-0.96”

3.執行:C:\python33\python.exe setup.py install

使用按鈕元件函式:

1. msgbox(msg='(Yourmessage goes here)', title=' ', ok_button='OK', image=None, root=None);

該函式顯示一個訊息和提供一個‘ok’按鈕,訊息內容和按鈕內容可以自行更改;

<span style="font-size:14px;">>>> msgbox("我一定要學會程式設計!", ok_button="加油!")</span>


2.ccbox(msg='Shall I continue?', title=' ', choices=('Continue', 'Cancel'), image=None, default_choice='Continue',cancel_choice='Cancel')

該函式提供一選擇‘continue’或者‘cancel’並返回一個整型的1或者0;

msg (str) – the msg to be displayed

title (str) – the window title choices (list) – a list or tuple of the choices to be displayed-(是一個列表或者元組)
<span style="font-size:14px;">
</span><pre name="code" class="python"><span style="font-family: 'Times New Roman';">if ccbox('要再來一次嗎?', choices=('要啊要啊^_^', '算了吧T_T')):</span>
msgbox('不給玩了,再玩就玩壞了......')else: sys.exit(0) # 記得先 import sys 哈

3.ynbox(msg='Shall I continue?', title=' ', choices=('yes', 'no'), image=None, default_choice='yes',cancel_choice='no')

該函式的功能與ccbox基本相似,只是按鈕顯示不同;

   4.buttonbox(msg='', title=' ', choices=('Button[1]', 'Button[2]', 'Button[3]'), image=None, root=None, default_choice=None, cancel_choice=None)

該函式可以定義一組自己的按鈕,按鈕內容為choices列表元素,並且當用戶點選按鈕時,會返回該按鈕的文字內容。如果使用者取消或者關閉視窗會返回第一個預設選項:

import easygui as g
choices = ['1','2','3']
g.buttonbox('你喜歡幾號數字',choices = choices)

5.indexbox(msg='Shall I continue?', title=' ', choices=('Yes', 'No'), image=None, default_choice='Yes', cancel_choice='No')

該函式與第三個函式類似。

選項元件函式:

1.choicebox(msg='Pick something.', title=' ', choices=())

該函式為使用者提供一個可選擇的列表,使用列表或者元組作為選項,並且這些選項會按照不區分大小寫的順序排序;

choices = ['I think you are cute!','No, this is not a good question','sorry,I do not think so']
g.choicebox('大家說我長得帥嗎?', title='question',choices = choices)

  2.multchoicebox(msg='Pick as many items as you like.', title=' ', choices=(), **kwargs)

 該函式為使用者提供一個可以多項選擇的列表。

對話視窗元件:

1.enterbox(msg='Enter something.', title=' ', default='', strip=True, image=None, root=None)

該函式為使用者提供一個簡單的輸入框,返回值為輸入的字串。預設返回值會去除首尾的空格,如果需要保留首尾空格請設定引數 strip為 flase ;

2.integerbox(msg='', title=' ', default='', lowerbound=0, upperbound=99, image=None, root=None)

該函式為使用者提供一個輸入視窗,可以輸入一個範圍在( lowerbound ~ upperbound)之間的整數值,否則會要求使用者重新輸入;

3.multenterbox(msg='Fill in values for the fields.', title=' ', fields=(), values=())

該函式為使用者提供多個簡單的輸入框,注意,如果輸入的值比要求輸入的選項少的話,返回值會自動用空格來補充;如果多的話,則返回值會自動截斷:

from easygui import *
msg = "Enter your personal information"
title = "Credit Card Application"
fieldNames = ["Name","Street Address","City","State","ZipCode"]
fieldValues = []  # we start with blanks for the values
fieldValues = multenterbox(msg,title, fieldNames)

while 1:
    if fieldValues is None: break
    errmsg = ""
    for i in range(len(fieldNames)):
        if fieldValues[i].strip() == "":
            errmsg += ('"%s" is a required field.\n\n' % fieldNames[i])
    if errmsg == "":
        break # no problems found
    fieldValues = multenterbox(errmsg, title, fieldNames, fieldValues)

writeln("Reply was: %s" % str(fieldValues))

4.passwordbox(msg='Enter your password.', title=' ', default='', image=None, root=None)

該函式為使用者提供一個密碼輸入視窗,輸入的字串顯示為 '*' ,返回值為輸入的字串;

5.multpasswordbox(msg='Fill in values for the fields.', title=' ', fields=(), values=())

     該函式與multenterbox使用相同的介面,但它使用的時候最後一個輸入框顯示為密碼的形式;

顯示文字函式:

  textbox(msg='', title=' ', text='', codebox=0)

 該函式會以預設比例字型(codebox)顯示文字內容,其中第三個引數為字串,列表或者元組;

目錄和檔案函式:

1.diropenbox(msg=None, title=None, default=None)

該函式為使用者提供一個對話方塊,返回一個使用者選擇的目錄名(完整路徑),如果使用者選擇取消,則返回none;default用於設定預設的開啟目錄路徑;

from easygui import *
default = 'F:\\'
diropenbox(default = default)


2.fileopenbox(msg=None, title=None, default='*', filetypes=None, multiple=False)

該函式為使用者提供一個對話方塊,返回一個使用者選擇的檔名(完整路徑);

default引數設定方法:

default引數設定一個預設路徑,包含一個或者多個萬用字元;

default引數一旦設定,則執行函式fileopenbox()顯示預設路徑和格式;

default預設引數為 '*' 即匹配所有格式檔案;

3.filesavebox(msg=None, title=None, default='', filetypes=None)

該函式為使用者提供一個對話方塊,用於選擇檔案儲存的路徑;

函式查詢:

egdemo() 該函式會顯示 easygui 庫的所有內建函式。