Шаг 247.
Библиотека PyQt5.
Диалоговые окна. Класс QMessageBox. Окно с предупреждающим сообщением

    На этом шаге мы рассмотрим метод для создания окна такого вида.

    Для вывода окна с предупреждающим сообщением предназначен статический метод warning(). Формат метода:

  warning(<Родитель>, <Текст заголовка>, <Текст сообщения>[,
    buttons=Ok][, defaultButton=NoButton])

    В параметре <Родитель> указывается ссылка на родительское окно или значение None. Если указана ссылка, то диалоговое окно будет центрироваться относительно родительского окна, а не относительно экрана. Необязательный параметр buttons позволяет указать выводимые стандартные кнопки (атрибуты, задающие стандартные кнопки, указываются через оператор |). По умолчанию отображается кнопка ОК. Параметр defaultButton назначает кнопку по умолчанию. Метод warning() возвращает числовое обозначение нажатой кнопки. Пример:

# -*- coding: utf-8 -*-
from PyQt5 import QtWidgets

import sys
def on_clicked():
    QtWidgets.QMessageBox.warning(None, "Текст заголовка", 
        "Действие может быть опасным. Продолжить?", 
        buttons=QtWidgets.QMessageBox.Yes | QtWidgets.QMessageBox.No | 
                QtWidgets.QMessageBox.Cancel, 
        defaultButton=QtWidgets.QMessageBox.Cancel)


app = QtWidgets.QApplication(sys.argv)
button = QtWidgets.QPushButton("Вызвать окно")
button.resize(200, 40)
button.clicked.connect(on_clicked)
button.show()
sys.exit(app.exec_())
Архив с файлом можно взять здесь.

    Результат выполнения этого кода показан на рисунке 1.


Рис.1. Окно с предупреждающим сообщением

    На следующем шаге мы рассмотрим создание окна с критическим сообщением.




Предыдущий шаг Содержание Следующий шаг