Шаг 58.
Библиотека PyQt5.
Обработка сигналов и событий. События окна. Перерисовка окна или его части

    На этом шаге мы рассмотрим методы, используемые для выполнения указанных операций.

    Когда компонент (или часть компонента) становится видимым, требуется выполнить его перерисовку. В этом случае вызывается метод с названием paintEvent (self, <event>). Через параметр <event> доступен экземпляр класса QPaintEvent, который поддерживает следующие методы:

    С помощью этих методов можно получить координаты области, которая, например, была ранее перекрыта другим окном и теперь вновь оказалась в зоне видимости. Перерисовывая только область, а не весь компонент, можно заметно повысить быстродействие приложения. Следует также заметить, что в целях эффективности последовательность событий перерисовки может быть объединена в одно событие с обшей областью перерисовки.

    В некоторых случаях перерисовку окна необходимо выполнить вне зависимости от внешних действии системы или пользователя - например, при изменении каких-либо значений требуется обновить график. Вызвать событие перерисовки компонента позволяют следующие методы класса QWidget:

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




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