На этом шаге рассмотрим окно предупреждающего сообщения.
Для отображения предупреждающего сообщения (рис. 1) вызывается статический метод warning() класса QMessageBox.
Рис.1. Окно предупреждающего сообщения
Вывод окна предупреждающего сообщения может выглядеть так:
int n = QMessageBox::warning(0,
"Предупреждение",
"Текст в файле был изменен."
"\n Сохранить изменения?",
QMessageBox::Yes | QMessageBox::No,
QMessageBox::Yes
);
if (n == QMessageBox::Yes) {
// Изменения были сохранены
}
Файлы приложения можно взять здесь.
В метод warning() первым параметром передается указатель на предка (в нашем случае нулевой), вторым — строка заголовка окна, третьим — текст сообщения. Четвертый параметр задает две кнопки (в нашем примере Yes и No). Пятый указывает на то, какая из кнопок будет кнопкой по умолчанию (в нашем случае это кнопка Yes). Если пользователь нажмет клавишу Escape, то метод warning() возвратит значение QMessageBox::Escape. В нашем примере мы проверяем нажатие на кнопку Yes (Да).
На следующем шаге рассмотрим окно критического сообщения.