wxpython中鼠标样式的获取与匹配
在wxpython中定义有多种默认的鼠标样式,譬如:wx.CURSORCROSS wx.CURSORHAND等等, 此处按下不表,可以参考wxpython的samples里面自带的cursor例子
这里讲介绍当前App的鼠标样式如何获取与匹配:
首先,获取非常简单,GetCursor()即可;
接着,匹配貌似易如反掌嘛,
if self.GetCursor() == wx.StockCursor(wx.CURSOR_CROSS): pass
想当然耳就要栽跟头,上面的逻辑判断永远是False,因为等式两边的返回值不是python object没法比较,解决办法很简单:
if self.GetCursor().GetHandle() == wx.StockCursor(wx.CURSOR_CROSS).GetHandle():
pass
14/08/17更新:
上述方法并不是官方说法且在wx2.8.12下报错,按照参考文档的说法调用IsOk方法查询该鼠标样式是否使用中才是正确的办法
if self.GetCursor().IsOk() == wx.StockCursor(wx.CURSOR_CROSS).IsOk():pass