100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > python做桌面软件 代码隐藏_Python 如何实现类QQ桌面边缘自动隐藏的功能

python做桌面软件 代码隐藏_Python 如何实现类QQ桌面边缘自动隐藏的功能

时间:2022-03-15 00:53:01

相关推荐

python做桌面软件 代码隐藏_Python 如何实现类QQ桌面边缘自动隐藏的功能

展开全部

import wx

# Create a new frame class, derived from the wxPython Frame.

class MyFrame(wx.Frame):

def __init__(self, parent, id, title):

# First, call the base class' __init__ method to create the frame

wx.Frame.__init__(self, parent, id, title, (100, 100), (160, 100),

style=wx.RESIZE_BORDER|wx.BORDER_SIMPLE)

# Associate some events with methods of this class

self.Bind(wx.EVT_SIZE, self.OnSize)

self.Bind(wx.EVT_MOVE, self.OnMove)

self.Bind(wx.EVT_CLOSE, self.OnCloseWindow)

# Add a panel and some controls to display the size and position

panel = wx.Panel(self, -1)

wx.StaticText(panel, -1, "Size:",

wx.DLG_PNT(panel, (4, 4)), wx.DefaultSize

)

wx.StaticText(panel, -1, "Pos:",

wx.DLG_PNT(panel, (4, 16)), wx.DefaultSize

)

self.sizeCtrl = wx.TextCtrl(panel, -1, "",

wx.DLG_PNT(panel, (24, 4)),

wx.DLG_SZE(panel, (36, -1)),

wx.TE_READONLY)

self.posCtrl = wx.TextCtrl(panel, -1, "",

wx.DLG_PNT(panel, (24, 16)),

wx.DLG_SZE(panel, (36, -1)),

wx.TE_READONLY)

self.SetPosition((100,100))

#self.y=self.GetSize().height

#print wx.DLG_PNT(panel, (24, 4)), wx.DLG_SZE(panel, (36, -1))

#print wx.DLG_PNT(panel, (24, 16)),wx.DLG_SZE(panel, (36, -1))

# This method is called automatically when the CLOSE event is

# sent to this window

def OnCloseWindow(self, event):

# tell the window to kill itself

self.Destroy()

# This method is called by the System when the window is resized,

# because of the association above.

def OnSize(self, event):

self.size = event.GetSize()

self.sizeCtrl.SetValue("%s, %s" % (self.size.width, self.size.height))

# tell the event system to continue looking for an event handler,

# so the default handler will get called.

event.Skip()

# This method is called by the System when the window is moved,

# because of the association above.

def OnMove(self, event):

self.pos = event.GetPosition()

if self.pos.y<=32:

self.OnSide()

elif self.pos.y>30:

#self.SetSize(self.size.width,self.y)

pass

self.posCtrl.SetValue("%s, %s" % (self.pos.x, self.pos.y))

event.Skip()

def OnSide(self):

#self.old=list(self.size)

#self.y=self.size.height

self.SetSize((self.size.width,0))

#---------------------------------------------------------------------------

# if running standalone

if __name__ == "__main__":

# Every wxWindows application must have a class derived from wxApp

class MyApp(wx.App):

# wxWindows calls this method to initialize the application

def OnInit(self):

# Create an instance of our customized Frame class

frame = MyFrame(None, -1, "This is a test")

frame.Show(True)

# Tell wxWindows that this is our main window

self.SetTopWindow(frame)

# Return a success flag

return True

app = MyApp(0) # Create an instance of the application class

app.MainLoop() # Tell it to start processing events

随便写了点,62616964757a686964616fe78988e69d8331333335336339wx不要标题栏竟然无法拖动,只好移动上边框

效果:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。