获取Windows透明wxPython

2024-05-16 15:13:20 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图在wxPython中获得windows透明性。我试过了自获取透明(),但这显然不存在。那么,如何获得windows的透明性呢?在


Tags: windowswxpython透明性
1条回答
网友
1楼 · 发布于 2024-05-16 15:13:20

您必须派生自己的类,该类将了解其自身的透明度:

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()

相关问题 更多 >