Рубрики
Без рубрики

Делать исчезновение с Wxpython

Получите практические, реальные навыки Python на наших ресурсах и пути

Автор оригинала: Mike Driscoll.

Сегодня мы собираемся перейти, как сделать ваше приложение сделать «исчезнуть». Одно обычное место, где пользователи Windows видят, что это уведомление по электронной почте Microsoft Outlook. Он исчезает, а затем обратно. WXPYPHON обеспечивает способ установить альфа-прозрачность любого верхнего окна, что влияет на виджеты, которые помещаются на виджете верхнего уровня.

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

Код ниже:

import wx

class Fader(wx.Frame):

    def __init__(self):
        wx.Frame.__init__(self, None, title='Test')
        self.amount = 5
        self.delta = 5
        panel = wx.Panel(self, wx.ID_ANY)

        self.SetTransparent(self.amount)

        ## ------- Fader Timer -------- ##
        self.timer = wx.Timer(self, wx.ID_ANY)
        self.timer.Start(60)
        self.Bind(wx.EVT_TIMER, self.AlphaCycle)
        ## ---------------------------- ##

    def AlphaCycle(self, evt):
        self.amount += self.delta
        if self.amount >= 255:
            self.delta = -self.delta
            self.amount = 255
        if self.amount <= 0:
            self.amount = 0
        self.SetTransparent(self.amount)

if __name__ == '__main__':
    app = wx.App(False)
    frm = Fader()
    frm.Show()
    app.MainLoop()

Как видите, все, что вам нужно сделать, чтобы изменить прозрачность виджета верхнего уровня, заключается в том, чтобы вызвать метод SetTransParent () этого виджета и пропустите его набор. Я на самом деле использую этот метод в приложении, который угасает в диалоговом окне, чтобы предупредить меня на новую почту в моей учетной записи электронной почты Zimbra.

Для получения дополнительной информации о проверке следующих ресурсов:

Таймеры Прозрачные рамки

Код проверяется на следующем:

ОС: Windows XP Python: 2.5.2 WxPython: 2.8.8.1 и 2.8.9.1