Как создать Fade-in рамку/диалог — wxPython #25

автор

Microsoft Outlook и ряд других программ имеют аккуратный небольшой визуальный прием, суть которого состоит в том, что отображается статусный диалог, который медленно появляется, застывает, а потом медленно затухает и исчезает. Набор инструментов wxPython позволяет быстро и просто реализовать данную возможность в вашем приложении, изменяя альфа-прозрачность любого виджета топ-уровня. Все виджеты, которые будут подчинены ему также унаследуют такую прозрачность, так что пропадать и появляется будет не только фон вашего приложения.

Мы собрали ТОП Книг для Python программиста которые помогут быстро изучить язык программирования Python. Список книг: Книги по Python

В данном примере я буду использовать объект рамки как объект топ-уровня, а также таймер, который будет менять альфа-прозрачность в течении 5 секунд. Хэндлер событий рамки заставит её содержимое затухать, исчезнуть и появится снова. Диапазон значений колеблется от 0 до 255, где 0 – полностью прозрачный, а 255 – полностью непрозрачный.

Как вы видите, всё, что нужно сделать для изменения прозрачности виджета топ-уровня, это вызвать метод SetTransparent() и задать в нём необходимые значения. Я сам использовал этот метод в некоторых моих прошлых приложениях, когда мне нужно было установить затухающее оповещение – например, вывести окно, сообщающее о новом письме, которое пропадало через несколько секунд.

Мы собрали ТОП Книг для Python программиста которые помогут быстро изучить язык программирования Python. Список книг: Книги по Python

Итоги

Если вы ещё не используете рекомендации из этой статьи в своих приложениях, применяйте его всегда, когда нужно будет отображать конечному пользователю поп-ап сообщение. В wx.lib.agw также имеется виджет ToasterBox. Это обычный виджет, который был полностью написан на Python, в котором есть масса удобных встроенных возможностей, благодаря которым вам не придётся придумывать то, что сделал я. Вам следует его заценить!

Вам может быть интересно

Scroll Up

Подпишись на канал!

Новые видеоуроки, книги и полезные статьи для python программистов!