Получение прозрачности Windows wxPython - PullRequest
1 голос
/ 10 марта 2011

Я пытаюсь получить прозрачность окон в wxPython. Я попытался self.GetTransparent () , однако, по-видимому, не существует. Итак, как мне получить прозрачность окон?

1 Ответ

2 голосов
/ 24 марта 2011

Вы должны получить свой собственный класс, который будет осознавать свою прозрачность:

import wx

class TransparentAwareFrame(wx.Frame):
    def __init__(self, *args, **kwargs):
        wx.Frame.__init__(self, *args, **kwargs)
        self.transparency = 255

    def SetTransparent(self, value):
        self.transparency = value
        wx.Frame.SetTransparent(self, value)

    def GetTransparent(self):
        return self.transparency        

class MainWindow(TransparentAwareFrame):
    def __init__(self, *args, **kwargs):
        TransparentAwareFrame.__init__(self, *args, **kwargs)
        self.button = wx.Button(self, label="Click me!")
        self.Show()    
        self.button.Bind(wx.EVT_BUTTON, self.onButton)

    def onButton(self, e):
        self.SetTransparent(self.GetTransparent() - 20)

app = wx.App(False)
win = MainWindow(None)
app.MainLoop()
...