Основы программирования в Linux
Шрифт:
Применив макросы libgnomeui в menu2.c, вы значительно сократили код, который нужно набирать, и сделали его гораздо понятнее. Макросы экономят ваше время и усилия, предпринимаемые для создания меню и согласования текста меню, клавиатурных акселераторов и пиктограмм с другими приложениями GNOME. Старайтесь применять их в ваших приложениях при любой возможности.
На рис. 16.13 показана программа menu3.c в действии на сей раз со стандартизованными в среде GNOME пунктами меню.
Рис. 16.13
Диалоговые окна
Основная часть любого приложения GUI — взаимодействие с пользователем и информирование его о важных событиях. Обычно для этого вы создаете временное окно с кнопками OK и Cancel и, если информация настолько важна, что требует немедленного отклика, например удаление файла, вам приходится блокировать доступ ко всем остальным окнам до тех пор, пока пользователь не сделает выбор (такие окна называют модальными диалоговыми окнами).
Мы только что описали диалоговое окно, и в комплекте GTK+ есть специальные виджеты диалоговых окон, являющиеся потомками виджета GtkWindow, что существенно облегчает вашу программистскую работу.
GtkDialog
Как вы можете видеть, объект
Эта функция создает диалоговое окно с заголовком и кнопками. Второй параметр,
Параметр
Вы можете комбинировать флаги с помощью поразрядной операции
Оставшиеся параметры — это
Далее показано, как бы вы создавали диалоговое окно с кнопками OK и Cancel, которое возвращает
Мы остановились на двух кнопках, но на самом деле на количество кнопок в диалоговом окне нет ограничений. Более того, вы можете выбирать из ряда флагов типа отклика. Флаги
Естественно, вы должны вставить содержимое в ваше диалоговое окно и для этого объект
Этот
После того как диалоговое окно создано, следующий шаг — представить его пользователю и ждать от него ответа. Сделать это можно двумя способами: в модальном режиме, который блокирует весь ввод за исключением диалогового окна, или в немодальном режиме, который воспринимает диалоговое окно как любое другое окно. Давайте сначала рассмотрим запуск модального диалогового окна.
Переписка и деловые бумаги
Документальная литература:
публицистика
рейтинг книги
Троцкий. «Демон революции»
10 вождей
Научно-образовательная:
история
рейтинг книги
"Фантастика 2025-80". Компиляция. Книги 1-28
Фантастика 2025. Компиляция
Фантастика:
фэнтези
боевая фантастика
попаданцы
рейтинг книги
Путь Шедара
4. Другая сторона
Фантастика:
боевая фантастика
рейтинг книги
UNIX: взаимодействие процессов
Компьютеры и Интернет:
программирование
рейтинг книги