子类化NSSlider:需要一种缺少鼠标悬停事件的解决方法(Cocoa OSX)

子类化NSSlider:需要一种缺少鼠标悬停事件的解决方法(Cocoa OSX),第1张

概述我试图子类NSSlider创建一个名为慢速拨号的控件.基本上我需要的是一个总是从中间开始的滑块,当它向左或向右移动时,它会经常发送通知(由可以设置的属性确定)通知其容器当前值,然后当你让你去旋钮,它会回到中间.我希望实现将滑块返回到中间并停止在滑块的mouseUp事件中发送通知的功能但似乎由于某种原因苹果在滑块上的mouseDown事件之后禁用MouseUp事件并处理所有滑块功能在较低的水平.无论 我试图子类NSSlIDer创建一个名为慢速拨号的控件.基本上我需要的是一个总是从中间开始的滑块,当它向左或向右移动时,它会经常发送通知(由可以设置的属性确定)通知其容器当前值,然后当你让你去旋钮,它会回到中间.我希望实现将滑块返回到中间并停止在滑块的mouseUp事件中发送通知的功能但似乎由于某种原因苹果在滑块上的mouseDown事件之后禁用MouseUp事件并处理所有滑块功能在较低的水平.无论如何,我可以恢复mouseUp事件吗?如果没有,任何人都可以提出合理的解决方法解决方法 每当你注意到一个超类的mouseDragged:或mouseUp:的实现没有被调用时,很可能是因为该类的mouseDown:的实现进入了一个跟踪循环.对于包括NSSlIDer在内的许多NSControl子类来说,情况确实如此.

检测鼠标的更好方法是对单元格进行子类化并覆盖相应的跟踪方法.在这种情况下,你可能想要 – (voID)stopTracking:(NSPoint)lastPoint at:(NSPoint)stopPoint inVIEw:(NSVIEw *)controlVIEw mouseIsUp:(BOol)flag,但startTracking:和continueTracking:variants也可能有用为了你想做什么.

总结

以上是内存溢出为你收集整理的子类化NSSlider:需要一种缺少鼠标悬停事件的解决方法(Cocoa OSX)全部内容,希望文章能够帮你解决子类化NSSlider:需要一种缺少鼠标悬停事件的解决方法(Cocoa OSX)所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1019453.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-23
下一篇 2022-05-23

发表评论

登录后才能评论

评论列表(0条)

保存