English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Подробное описание модуля Python EasyGui

Подробное описание модуля Python EasyGui

Введение:

Поскольку я хотел разработать некоторые простые интерфейсы на Windows с помощью Python, я нашел библиотеку EasyGui, которая легко освоить. Давайте поделимся простым использованием.

Ссылки для参考:Официальное руководство

Далее я покажу, как использовать этот модуль от простого к сложному. Надеюсь, это поможет вам, кто только начал знакомиться с easygui :-)

msgBox, ccbox, ynbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
__Desc__ = один из самых простых окон MessageBox, аналогичных Java
import easygui
title = easygui.msgbox(msg='提示信息', title='标题部分', ok_button="OOK")
msg = easygui.msgbox('Hello Easy GUI')
print 'Возвратное значение:' + msg
ccbox = easygui.ccbox("here is Continue | Cancel Box!")
print 'Возвратное значение:' + str(ccbox)
ynbox = easygui.ynbox("Yes Or No Button Box!")

bottonbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Возврат к простому интерфейсу, второй параметр - это список
import easygui
# choice = easygui.buttonbox("Здесь есть сообщение: \n", title='Выберите один из трёх",
#   , 'two', 'three'])
# easygui.msgbox('Вы选择了:' + str(choice))
#
# # choices должен содержать только два параметра, выбранный из которых возвращает 1,其余返回 0
# bool = easygui.boolbox('msg提示信息', title='标题部分', choices=['A', 'B'])
# easygui.msgbox(bool)
image = 'me.jpg'
msg = 'Вот моя фотография, фанат python'
choices = ['Да','Нет',"Не уверен"]
title = 'Я handsome?'
easygui.buttonbox(msg,title,image=image,choices=choices)

choicebox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Выбирает один элемент из списка и возвращает его
import easygui
msg = 'Выберите один элемент из списка'
title = 'Необходимо выбрать один'
choices = ['1','2','3','4','5','6','7']
answer = easygui.choicebox(msg,title,choices)
print 'Вы选择了 :' + str(answer)

enterbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Контрол, который позволяет вводить текст пользователя
import easygui
st = easygui.enterbox("Введите текст: \n")
print "Вы ввели: " + str(st)

mutilchoicebox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Элемент списка для выбора нескольких. Хм, в этой версии это не реализовано должным образом. Мои варианты выбора не работают
import easygui
msg = 'Выберите один элемент из списка'
title = 'Необходимо выбрать один'
choices = (1,2,3,4,5,6,7,8,9)
answer1 = easygui.multchoicebox(msg,title,choices)
for item in answer1:
  print item

intenterbox,passenterbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Предоставляет пользователю простую строку ввода, которая может принимать только значения из заданного диапазона
import easygui
msg = 'Введите число в диапазоне от 0 до 100'
title = 'Ограничено типом числа'
lowerbound = 0
upperbound = 100
default = ''
image = 'me.jpg'
result = easygui.integerbox(msg,title,default,lowerbound,upperbound,image)
print result

textbox,codebox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = easygui еще предоставляет поддержку для большого количества текста, а также для текста кода
import easygui
msg = '大文本的支持'
title = 'Text Code'
text = 'abcdefghijklmnopqrstuvwxyzABCDEFGHJIKLMNOPQRSTUVWXYZ0123456789-/'
textContent = easygui.textbox(msg,title,text)
codeContent = easygui.codebox(msg,title,)
print textContent
print codeContent
# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/text_codebox.py
# abcdefghijklmnopqrstuvwxyzABCDEFGHJIKLMNOPQRSTUVWXYZ0123456789-/
# public class HelloWorld{
#  public static void main(String []args) {
#    System.out.println("Hello World!");
# }
# }
#
# Процесс завершен с кодом выхода 0

diropenbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Эта функция используется для предоставления диалогового окна, которое возвращает имя каталога пользователя, выбранный с полным путём
#  При выборе Cancel возвращается значение по умолчанию None
import easygui
msg = 'Выберите файл, и будет возвращен полный путь к его каталогу'
title = 'Диалоговое окно выбора файла'
default = r'F:\flappy-bird'
full_file_path = easygui.diropenbox(msg, title, default)
print 'Полный путь к выбранному файлу: ' + str(full_file_path)
# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/diropenbox.py
#  Полный путь к выбранному файлу: F:\flappy-bird
#
# Процесс завершен с кодом выхода 0

fileopenbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Этот метод используется для предоставления диалогового окна, которое возвращает имя файла пользователя, выбранный с полным путём, при выборе Cancel возвращает None
#       default="c:/fishc/*.py" означает, что будут отображены все файлы Python в папке C:\fishc.
#       default="c:/fishc/test*.py" означает, что будут отображены все файлы с именами, начинающимися на test, в папке C:\fishc.
#       filetypes параметр является списком строк, содержащих маски файлов, запомните, это список. Например: filetypes = ["*.css", ["*.htm", "*.html", "HTML files"]]
import easygui
msg = 'Возвращает полный путь к выбранным файлам, при выборе Cancel возвращает None'
title = 'Файловый выборщик'
default = 'E:/Code/Python/MyTestSet/easygui/*.py'
opened_files = easygui.fileopenbox(msg, title, default, multiple=True)
for item in opened_files:
  print item
# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/fileopenbox.py
# E:\Code\Python\MyTestSet\easygui_\me.jpg
# E:\Code\Python\MyTestSet\easygui_\buttonbox.py
# E:\Code\Python\MyTestSet\easygui_\choicesbox.py
# E:\Code\Python\MyTestSet\easygui_\diropenbox.py
# E:\Code\Python\MyTestSet\easygui_\enterbox.py
# E:\Code\Python\MyTestSet\easygui_\fileopenbox.py
# E:\Code\Python\MyTestSet\easygui_\integerbox.py
#
# Процесс завершен с кодом выхода 0

filesavebox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Функцияпresentsdialogboxtoallowtheuser togivethepathofthefiletobesaved(thewholepath)orreturnNoneifCancelisselected
#        Параметрdefaultдолженсодержатьимяфайла(например, текущийфайл,которыйнужносохранить),конечно,выможетеустановитьпустуюстрокуиливключитьглобальныймаскуформатафайла.
#        filetypesreferstotheabovefileopenbox
import easygui
msg = 'Сохраните ваш файл'
title = "Сохранить файл"
default = 'E:/Code/Python/MyTestSet/easygui/newFile.*'
savedfile = easygui.filesavebox(msg,title,default)
print savedfile
print 'Конечно, здесь это всего лишь полный путь к файлу, но он не будет сохранен в реальном файле, для сохранения файла потребуется использовать другие библиотеки'
# D:\Software\Python2\python.exe E:/Code/Python/MyTestSet/easygui_/filesavebox.py
# E:\Code\Python\MyTestSet\easygui_\newFile.doc
# Конечно, это всего лишь полный путь и имя файла, он не будет действительно сохранен в файл, для сохранения файла нужно использовать другие библиотеки
#
# Процесс завершен с кодом выхода 0

exceptionbox

# coding:utf-8
#  __author__ = 'Mark sinoberg'
#  __date__ = '2016/5/25'
#  __Desc__ = Это очень полезный диалоговое окно, когда приложение встречает исключение, можно использовать его для предоставления пользователю дружественного интерфейса
import easygui
try:
  int('Exception')
except:
  easygui.exceptionbox('Ошибка преобразования типа int! Пожалуйста, проверьте ваш тип данных!')
# Откроется окно, содержимое которого можно определить самостоятельно, как上面. Следующие строки - это отслеживаемые ошибки
# Traceback (most recent call last):
#  File "E:/Code/Python/MyTestSet/easygui_/exceptionbox.py", line 10, in <module>
#   int('Exception')
# ValueError: недопустимое литеральное значение для int() с основанием 10: 'Exception'

Обобщение

После просмотра этих примеров,想必对 разработку простых десктопных приложений с помощью easygui вы уже очень уверены. (^__^) Хихихи...

Но для более сложных задач просто знание этих основ远远不够. Поэтому нам нужно также изучить другие модули Python. Таким образом, в процессе разработки можно выбирать наиболее подходящий модуль в зависимости от сложности задачи.

Спасибо за чтение, надеюсь, это поможет вам, спасибо за поддержку нашего сайта!

Основной учебник
Вам может понравиться