Python wxpython模块响应鼠标拖动事件操作示例

yipeiwu_com6年前Python基础

本文实例讲述了Python wxpython模块响应鼠标拖动事件操作。分享给大家供大家参考,具体如下:

wxpython鼠标拖动事件小案例:

#coding:UTF-8
import wx
app = wx.App()
def dragEVT(event):
 if event.ButtonDown():
  panel1.SetPosition(event.GetPosition())
 elif event.Dragging():
  panel1.SetPosition(event.GetPosition())
 elif event.ButtonUp():
  panel1.SetPosition(event.GetPosition())
frame = wx.Frame(None, -1, "www.jb51.net")
page1BoxSizer = wx.BoxSizer(wx.HORIZONTAL)
frame.SetSizer(page1BoxSizer)
panel1 = wx.Panel(frame,wx.ID_ANY,size = wx.Size(100,100))
panel1.SetBackgroundColour("#aa0000")
frame.Bind(wx.EVT_MOUSE_EVENTS,dragEVT)
frame.Show()
app.MainLoop()

【听图阁-专注于Python设计】测试运行结果如下:

附:wxpython处理鼠标事件列表

EVT_LEFT_DOWN(func) 用来处理wxEVT_LEFT_DOWN事件, 在鼠标左键按下的时候产生.
EVT_LEFT_UP(func) 用来处理wxEVT_LEFT_UP事件, 在鼠标左键被释放的时候产生.
EVT_LEFT_DCLICK(func) 用来处理wxEVT_LEFT_DCLICK事件,在鼠标左键被双击的时候产生.
EVT_MIDDLE_DOWN(func) 用来处理wxEVT_MIDDLE_DOWN事件, 在鼠标中键被按下的时候产生.
EVT_MIDDLE_UP(func) 用来处理wxEVT_MIDDLE_UP事件,当鼠标中键被释放的时候产生.
EVT_MIDDLE_DCLICK(func) 用来处理wxEVT_MIDDLE_DCLICK事件,在鼠标中键被双击的时候产生.
EVT_RIGHT_DOWN(func) 用来处理wxEVT_RIGHT_DOWN事件,鼠标右键被按下的时候产生.
EVT_RIGHT_UP(func) 用来处理wxEVT_RIGHT_UP事件,鼠标右键被释放的时候产生.
EVT_RIGHT_DCLICK(func) 用来处理wxEVT_RIGHT_DCLICK事件,鼠标右键被双击的时候产生.
EVT_MOTION(func) 用来处理wxEVT_MOTION事件,鼠标指针移动的时候产生.
EVT_ENTER_WINDOW(func) 用来处理wxEVT_ENTER_WINDOW事件,鼠标指针移入某个窗口的时候产生.
EVT_LEAVE_WINDOW(func) 用来处理wxEVT_LEAVE_WINDOW事件,鼠标移出某个窗口的时候产生.
EVT_MOUSEWHEEL(func) 用来处理wxEVT_MOUSEWHEEL事件,鼠标滚轮滚动的时候产生.
EVT_MOUSE_EVENTS(func) 用来处理所有的鼠标事件.

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

相关文章

python去除扩展名的实例讲解

获取不带扩展名的文件的名称: import os printos.path.splitext("path_to_file")[0] from os.path import ba...

Python正则表达式非贪婪、多行匹配功能示例

本文实例讲述了Python正则表达式非贪婪、多行匹配功能。分享给大家供大家参考,具体如下: 一些regular的tips: 1 非贪婪flag >>> re.fin...

widows下安装pycurl并利用pycurl请求https地址的方法

widows下安装pycurl并利用pycurl请求https地址的方法

步骤一:下载对应的CURL压缩包并在windows上配置好环境变量 进入CURL官网下载对应的windows压缩包。地址:点击打开链接 把下载好的压缩包解压到自己喜欢的一个目录下,我暂...

Python的SQLAlchemy框架使用入门

数据库表是一个二维表,包含多行多列。把一个表的内容用Python的数据结构表示出来的话,可以用一个list表示多行,list的每一个元素是tuple,表示一行记录,比如,包含id和nam...

Python登录系统界面实现详解

Python登录系统界面实现详解

导言篇 我的python环境是:python3.6.5 这里我选择的GUI编程包是:tkinter tkinker在python2.5以后就是自带包了,所以我们不需要另外安装 tkin...