В этой статье есть несколько проблем. Помогите улучшить ее или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти сообщения )
|
Оригинальный автор(ы) | Sun Microsystems |
---|---|
Разработчик(и) | Глинн Фостер Лукас Роча |
Стабильный релиз | 4.0.3 [1] / 23 октября 2024 г. (23 October 2024) |
Репозиторий |
|
Операционная система | Unix-подобный |
Лицензия | Стандартная общественная лицензия ограниченного применения GNU |
Веб-сайт | gitlab.gnome.org/GNOME/zenity |
Zenity — это бесплатное программное обеспечение и кроссплатформенная программа, которая позволяет выполнять диалоговые окна GTK в командной строке и скриптах оболочки .
Подобно таким инструментам, как whiptail и dialog , Zenity позволяет легко создавать графические интерфейсы, [2] хотя у него меньше функций, чем у более сложных инструментов для создания графических интерфейсов. [3]
Другие языки сценариев, такие как Perl и Python, могут использоваться для создания полномасштабных приложений с графическим интерфейсом, но программа zenity позволяет скрипту оболочки взаимодействовать с пользователем графического интерфейса... Пользовательский интерфейс не настолько совершенен, как тот, который может быть предоставлен полнофункциональным приложением с графическим интерфейсом, но он идеально подходит для простых взаимодействий.
— Крис Тайлер [4]
По состоянию на 2012 год [update]Zenity доступна для Linux, BSD и Windows. [5] Порт Zenity для Mac OS X доступен в MacPorts и Homebrew .
По состоянию на 2018 год доступны порты Zenity для Windows: zenity-windows (на основе версии 3.20.0) и winzenity (на основе 3.8.0 / статически связан)
Zenity не обладает встроенными возможностями скриптинга и поэтому должен полагаться на интерпретатор для обработки. Чтобы создать скрипт, который работает на нескольких платформах без значительных изменений, лучше всего использовать интерпретатор, который доступен в самом широком спектре операционных систем. Одним из вариантов является Python в сочетании с библиотекой PyZenity. [6]
из PyZenity import InfoMessage из PyZenity import Question из PyZenity import ErrorMessageвыбор = Вопрос ( 'Пожалуйста, нажмите кнопку.' )если выбор : InfoMessage ( 'Вы нажали Да!' ) иначе : ErrorMessage ( 'Вы нажали Нет!' )
#!/bin/шif zenity --question --text = "Пожалуйста, нажмите кнопку." ; then
zenity --info --text = "Вы нажали Да\!" else
zenity --error --text = "Вы нажали Нет\!" fi
@ эхо выкл.zenity --question --ok-label= "Да" --cancel-label= "Нет" --text= "Пожалуйста, нажмите кнопку." if %ERRORLEVEL% == 1 goto error
zenity --info --text= "Вы нажали "Да"!" goto end : error
zenity --error --text= "Вы нажали "Нет"!" : end