python bind()事件疑问
以下代码是wxpython的实例源码:wxPIA_book1\Chapter-03\mouse_event.py
问题一:
其中的
self.Bind(wx.EVT_BUTTON, self.OnButtonClick, self.button)
self.button.Bind(wx.EVT_ENTER_WINDOW, self.OnEnterWindow)
self.button.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow)
self.Bind 和 self.button.Bind 有什么 不同么?
问题二:
就像上面的假如我定义多个定时器,我是否可以直接使用以下方式进行绑定,是否和self.bind()绑定有区别?
#!/usr/bin/env python
import wx
class MouseEventFrame(wx.Frame):
def __init__(self, parent, id):
wx.Frame.__init__(self, parent, id, 'Frame With Button',
size=(300, 100))
self.panel = wx.Panel(self)
self.button = wx.Button(self.panel, label="Not Over", pos=(100, 15))
self.Bind(wx.EVT_BUTTON, self.OnButtonClick, self.button)
self.button.Bind(wx.EVT_ENTER_WINDOW, self.OnEnterWindow)
self.button.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow)
def OnButtonClick(self, event):
self.panel.SetBackgroundColour('Green')
self.panel.Refresh()
def OnEnterWindow(self, event):
self.button.SetLabel("Over Me!")
event.Skip()
def OnLeaveWindow(self, event):
self.button.SetLabel("Not Over")
event.Skip()
if __name__ == '__main__':
app = wx.PySimpleApp()
frame = MouseEventFrame(parent=None, id=-1)
frame.Show()
app.MainLoop()
问题一:
其中的
self.Bind(wx.EVT_BUTTON, self.OnButtonClick, self.button)
self.button.Bind(wx.EVT_ENTER_WINDOW, self.OnEnterWindow)
self.button.Bind(wx.EVT_LEAVE_WINDOW, self.OnLeaveWindow)
self.Bind 和 self.button.Bind 有什么 不同么?
问题二:
就像上面的假如我定义多个定时器,我是否可以直接使用以下方式进行绑定,是否和self.bind()绑定有区别?
class timer:
def __init__(self....):
self.clocktimer = wx.timer(self)
self.clocktimer.bind(wx.EVT_TIMER, self.OnTimer)
self.testtimer = wx.timer(self)
self.testtimer.bind(wx.EVT_TIMER, self.OnTimer)
def OnTimer(self):
print "this is timer"
...全文
相关推荐
详解python tkinter教程-事件绑定
主要介绍了python tkinter事件绑定,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
Python GUI编程学习笔记之tkinter事件绑定操作详解
本文实例讲述了Python GUI编程学习笔记之tkinter事件绑定操作。分享给大家供大家参考,具体如下: 相关内容: command bind protocol 首发时间:2018-03-04 19:26 command: command是控件中的一个参数,如果使得command=函数,那么点击控件的时候将会触发函数 能够定义command的常见控件有: Button、Menu… 调用函数时,默认是没有参数传入的,如果要强制传入参数,可以考虑使用lambda from tkinter import * root=Tk() def prt(): print(
python对绑定事件的鼠标、按键的判断实例
今天小编就为大家分享一篇python对绑定事件的鼠标、按键的判断实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Python tkinter事件高级用法实例
主要介绍了Python tkinter事件高级用法,结合实例形式分析了Python使用tkinter模块的事件响应及图形绘制相关操作技巧,需要的朋友可以参考下
Python-Tkinter事件处理
所谓 event 事件就是程序上发生的事。例如用户敲击键盘上的某一个键或是点击移动鼠标。而对于这些事件,程序需要做出反应。 Tkinter 提供的组件通常都包含许多内在行为


