麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Python > 正文

wxPython事件驅動實例詳解

2020-02-23 05:52:46
字體:
來源:轉載
供稿:網友

本文實例講述了wxPython的事件驅動機制,分享給大家供大家參考。具體方法如下:

先來看看如下代碼:

#!/usr/bin/python  # moveevent.py  import wx  #導入wx庫  class MoveEvent(wx.Frame):   def __init__(self, parent, id, title):     wx.Frame.__init__(self, parent, id, title, size=(250, 180)) #窗口大小為(250, 180)      wx.StaticText(self, -1, 'x:', (10,10))#parent, id, title, point     wx.StaticText(self, -1, 'y:', (10,30))     self.st1 = wx.StaticText(self, -1, '', (30, 10))     self.st2 = wx.StaticText(self, -1, '', (30, 30))      self.Bind(wx.EVT_MOVE, self.OnMove)  #綁定Frame的move事件      self.Centre()     self.Show(True)    def OnMove(self, event):     x, y = event.GetPosition()     self.st1.SetLabel(str(x))     self.st2.SetLabel(str(y))      app = wx.App()#生成應用程序 MoveEvent(None, -1, 'move event')#調用自己的類,三個參數為:parent, id , title app.MainLoop()#應用程序事件循環 

程序運行效果如下圖所示:

wxStaticText的兩個構造函數官方文檔如下:
wxStaticText ()
   Default constructor.
wxStaticText (wxWindow *parent, wxWindowID id, const wxString &label, const wxPoint &pos=wxDefaultPosition, const wxSize &size=wxDefaultSize, long style=0, const wxString&name=wxStaticTextNameStr)
 
Constructor, creating and showing a text control.

The event parameter in the OnMove() method is an object specific to a particular event type. In our case it is the instance of a wx.MoveEvent class. This object holds information about the event. For example the Event object or the position of the window. In our case the Event object is the wx.Frame widget. We can find out the current position by calling the GetPosition() method of the event.

OnMove()方法中的event參數是一種特殊的事件類型,在我們的例子中,它是wx.MoveEvnet類的一個實例.這個對象保存了事件的一些信息,比如這個事件對象或者窗口的位置.在我們例子中事件對象是一個wx.Frame控件.我們可以通過調用事件對象的GetPosition()得到當前位置信息.

Vetoing events

Sometimes we need to stop processing an event. To do this, we call the method Veto().

#!/usr/bin/python  # veto.py  import wx  class Veto(wx.Frame):   def __init__(self, parent, id, title):     wx.Frame.__init__(self, parent, id, title, size=(250, 200))       self.Bind(wx.EVT_CLOSE, self.OnClose)      self.Centre()     self.Show(True)    def OnClose(self, event):      dial = wx.MessageDialog(None, 'Are you sure to quit?', 'Question',       wx.YES_NO | wx.NO_DEFAULT | wx.ICON_QUESTION)     ret = dial.ShowModal()     if ret == wx.ID_YES:       self.Destroy()     else:       event.Veto()  app = wx.App() Veto(None, -1, 'Veto') app.MainLoop()

希望本文所述對大家的Python程序設計有所幫助。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久久久亚洲美女啪啪 | 国产午夜精品一区二区三区免费 | 一区二区三区在线观看视频 | 日韩精品羞羞答答 | 成人短视频在线观看免费 | 国产九九在线视频 | 国产精品爱久久久久久久 | 亚洲视频欧美 | 私库av在线免费观看 | 久久黄色影院 | 亚洲网站在线 | 99视频有精品视频高清 | 国产成人在线综合 | 成人免费观看49www在线观看 | 国产精品亚洲激情 | 91精品国产一区二区三区动漫 | 91网站在线观看视频 | 久久精品国产99国产精品澳门 | 午夜视频免费在线观看 | 性插视频| 91在线播放国产 | 久久国产精品无码网站 | 麻豆91精品91久久久 | 久久国产精品小视频 | 欧美 亚洲 视频 | 国产一级在线观看视频 | 精品久久久久久久久久 | 国产精品久久久久久一区二区三区 | 中国字幕av | 性少妇videosexfreexx入片 | 免费看黄色一级大片 | 午夜精品在线视频 | 日韩在线播放一区二区 | 免费一级在线观看 | 国产色91| 97伦理 | 有兽焉免费动画 | 国产精品久久久久久久久久大牛 | 国产无区一区二区三麻豆 | 91久久精品一区二区 | 精品一区二区在线视频 |