Я пытаюсь создать окно wxpython (только окно в том смысле, что это объект окна) .. которое заполняет весь экран и полностью невидимо. Затем я хочу позволить пользователю щелкнуть и перетащить в «окно» (т. Е. В любое место на экране).
Когда я пытаюсь выполнить self.SetTransparent(0)
, пользовательский ввод не захватывается окном.
Это предполагаемое поведение?
Это правильный способ достичь того, чего я хочу? Непрозрачность 1
, очевидно, неразличима для человеческого глаза, но мне все еще интересно, почему я не могу сделать ее полностью прозрачной.
Вот фрагмент:
import wx
class Frame(wx.Frame):
def __init__(self):
style = (wx.STAY_ON_TOP | wx.NO_BORDER)
wx.Frame.__init__(self, None, title="Invisible", style=style)
self.SetTransparent(0) # This doesn't work
#self.SetTransparent(1) # But this works fine
self.Bind(wx.EVT_KEY_UP, self.OnKeyPress)
def OnKeyPress(self, event):
"""quit if user press q or Esc"""
if event.GetKeyCode() == 27 or event.GetKeyCode() == ord('Q'): #27 is Esc
self.Close(force=True)
else:
event.Skip()
app = wx.App()
frm = Frame()
frm.ShowFullScreen(True)
app.MainLoop()
Или есть способ вообще не задавать окну фон, а не полностью прозрачный цветной фон?