wxpyhon 鼠标事件例子

#encoding:utf-8
import wx
import wx.aui
class MyFrame(wx.Frame):
    def __init__(self, *args, **kwargs):

        wx.Frame.__init__(self, *args, **kwargs)
        self.mgr = wx.aui.AuiManager(self)

        leftpanel = wx.Panel(self, -1, size=(200, 150))
        rightpanel = wx.Panel(self, -1, size=(200, 150))
        bottompanel = wx.Panel(self, -1, size=(200, 150))
        bottompane2 = wx.Panel(self, -1, size=(200, 150))
        wangjiAN = wx.TextCtrl(rightpanel,style=wx.TE_RICH|wx.TE_AUTO_URL)
        btn = wx.Button(leftpanel)
        self.mgr.AddPane(bottompanel, wx.aui.AuiPaneInfo().Center().MaximizeButton(True).Layer(2))
        self.mgr.AddPane(leftpanel, wx.aui.AuiPaneInfo().Caption("hello2").Bottom().Layer(4))
        self.mgr.AddPane(rightpanel, wx.aui.AuiPaneInfo().Left().MaximizeButton(True).Layer(5))
        self.mgr.AddPane(bottompane2, wx.aui.AuiPaneInfo().Caption("hello1").Bottom().Layer(0))
        wangjiAN.Bind(wx.EVT_LEFT_DOWN, self.fun) #使用控件.Bind才能激活鼠标事件,self.Bind(wx.EVT,self.fun, wangjiAN)这个方法无法激活鼠标事件,谁响应鼠标事件谁bind
        wangjiAN.Bind(wx.EVT_LEFT_UP, self.fun)
        self.Bind(wx.EVT_BUTTON, self.fun)
        self.mgr.Update()
    def fun(self, event):
        print "**********************"

class MyApp(wx.App):
    def OnInit(self):

        frame = MyFrame(None, -1, ‘ax.aui‘)
        frame.Show()
        self.SetTopWindow(frame)
        return 1

app = MyApp()
app.MainLoop()

EVT_LEFT_DOWN 鼠标左键按下。
EVT_LEFT_UP 鼠标左键抬起。
EVT_LEFT_DCLICK 鼠标左键双击

控件.Bind(WX.EVENT, FUN)

时间: 2024-12-14 23:15:11

wxpyhon 鼠标事件例子的相关文章

整理之DOM事件阶段、冒泡与捕获、事件委托、ie事件和dom模型事件、鼠标事件

整理之DOM事件阶段 本文主要解决的问题: 事件流 DOM事件流的三个阶段 先理解流的概念 在现今的JavaScript中随处可见.比如说React中的单向数据流,Node中的流,又或是今天本文所讲的DOM事件流.都是流的一种生动体现.用术语说流是对输入输出设备的抽象.以程序的角度说,流是具有方向的数据. 事件流分事件冒泡与事件捕获 在浏览器发展的过程中,开发团队遇到了一个问题.那就是页面中的哪一部分拥有特定的事件? 可以想象画在一张纸上的一组同心圆,如果你把手指放在圆心上,那么你的手指指向的其

Python游戏引擎开发(五):Sprite精灵类和鼠标事件

本次来实现Sprite类和鼠标事件. 说起这个Sprite啊,涉及过2D游戏研究领域的看官应该都听说过它.它中文原意是"精灵",不过在不同人的眼中,它所表示的意义不同.比如说在cocos2d中,它可以是一张图片.不过在flash中,Sprite是一个类似于"层"的家伙.当然你把它定义为层并不是很准确,实际上它是一个含显示列表的显示对象.什么意思呢?各位看官如果阅读了前面的章节,那对显示列表并不陌生.它说白了就是一个包含其他显示对象的容器. 那也许你会想,为什么要有这

鼠标事件(jQuery)

1jQuery鼠标事件之click与dbclick事件 用交互操作中,最简单直接的操作就是点击操作.jQuery提供了两个方法一个是click方法用于监听用户单击操作,另一个方法是dbclick方法用于监听用户双击操作.这两个方法的用法是类似的,下面以click()事件为例 使用上非常简单: 方法一:$ele.click() 绑定$ele元素,不带任何参数一般是用来指定触发一个事件,用的比较少 <div id="test">点击触发<div> $("e

“穿透”层的鼠标事件

“穿透”层的鼠标事件 标题可能不是一读让人容易明白,上张图(转载的) 需要实现如下的效果,有一个浮动层,需要层级在它之下的一个元素也能照常响应相应的事件 一个100*100的元素,边框为1px solid #406c99,它有两个事件(鼠标移入.鼠标移出): onmouseover="this.style.borderColor='#f00';" onmouseout="this.style.borderColor='#406c99';" 在不做特殊处理的情况下,它

Java知多少(93)鼠标事件

鼠标事件的事件源往往与容器相关,当鼠标进入容器.离开容器,或者在容器中单击鼠标.拖动鼠标时都会发生鼠标事件.java语言为处理鼠标事件提供两个接口:MouseListener,MouseMotionListener接口. MouseListener接口 MouseListener接口能处理5种鼠标事件:按下鼠标,释放鼠标,点击鼠标.鼠标进入.鼠标退出.相应的方法有:(1) getX():鼠标的X坐标(2) getY():鼠标的Y坐标(3) getModifiers():获取鼠标的左键或右键.(4

十. 图形界面(GUI)设计13.鼠标事件

鼠标事件的事件源往往与容器相关,当鼠标进入容器.离开容器,或者在容器中单击鼠标.拖动鼠标时都会发生鼠标事件.java语言为处理鼠标事件提供两个接口:MouseListener,MouseMotionListener接口. MouseListener接口 MouseListener接口能处理5种鼠标事件:按下鼠标,释放鼠标,点击鼠标.鼠标进入.鼠标退出.相应的方法有:(1) getX():鼠标的X坐标(2) getY():鼠标的Y坐标(3) getModifiers():获取鼠标的左键或右键.(4

Opencv图像识别从零到精通(13)----点线圆矩形与鼠标事件

图像中不可少的元素就是点.线.圆.椭圆.矩形,多边形,同时这些也是物体的特征组成单位,在图像识别中必不可少.所以要首先去认识这个元素怎么定义和使用,同时鼠标是电脑的窗口,我们很多的处理都会用到鼠标.本文主要有下面三个部分: (1) 点.线.圆.椭圆.矩形的基础应用 (2)点.线.圆.椭圆.矩形的进阶应用 (3)鼠标事件 一.点.线.圆.椭圆.矩形的基础应用 绘制点的函数: Point a = Point (600,600); 文字函数putText()函数 void putText( CvArr

用产生随机数的方法加上鼠标事件实现点击生成彩色积木

这个小例子我是用纯Js实现的,这个例子主要用到了random()产生随机数的方法和onmouse等鼠标事件以及获取元素和视口坐标来实现了可以在网页上拖拽的积木效果,可以帮学习javascript的同学一些小小的启发,话不多说,先给大家看效果图: 这个html代码就很简单了,我们写一个按钮来实现点击事件即可: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo

GTK进阶学习:鼠标事件

鼠标事件,可以理解为操作鼠标的动作.对于窗口而言,用户操作鼠标,窗口检测到鼠标的操作( 产生一个信号 ),然后去做相应处理( 调用其规定的回调函数 ),即可认为是鼠标事件,还是信号与回调函数的知识点. 信号与回调函数的使用请点击此处. 窗口默认不接收鼠标的操作,需要手动添加让其接收. 设置控件捕获(接收)相应的事件: void gtk_widget_add_events( GtkWidget *widget, gint events ); widget:控件 events:事件类型,它是GdkE