|
|
1
3
重写
你也可以在苹果的事件处理文档中找到一些帮助,特别是关于 mouse events custom views . |
|
|
2
2
把它变成一个单独的控件怎么样?这可能会使绘图有点复杂,但看起来您正在进行自定义绘图。 如果将其作为单个控件来执行,则可以首先检查并查看单击点是否在中心圆内。如果不是,那么您所要做的就是确定它位于哪个象限,以知道它属于哪个“按钮”(同时验证单击是否与外圈相符)。
|
|
|
3
2
与Marc W的响应类似,在您自己的事件方法中,您可以检查单击位图的alpha值,如果alpha值低于某个值,则忽略该值。 要获取位图, read this 现在,您应该有这样一个位图指针(伪代码-您必须填写这些部分):
然后,您可以这样做以获得感兴趣的像素,并对其进行测试:
这为你打开了一些可能性,比如在你的内圆周围有一个不属于任何象限或中间圆的惰性环。当然,总有其他方法来做这些事情,而不必诉诸像素争论:-) |
|
4
1
如果使用NSBezierPath在代码中生成形状,则测试单击是否在其中一个形状内是一行:发送形状a
我会让它成为一个拥有五条路径的单一视图。绘制时,最后绘制一个中心;当响应鼠标事件时,请先点击测试。根据您的需要,为该视图提供每个片段一个操作属性,并可选地为每个片段提供一个目标。 |
|
|
5
1
您需要做两件事:
|
|
|
6
0
Mu解决方案仅适用于非相交按钮。我有一个非矩形按钮,它必须将图像从灰色变为绿色。
就这些。希望这能帮助别人。 |
|
|
Himanshu P · 在情节提要项目中为窗口使用自定义类 8 年前 |
|
|
Charlie Fish · macOS Sierra上未显示可可窗口 8 年前 |
|
|
KT_ · macOS窗口边框大小 8 年前 |
|
|
josh · NSWindow闪烁 11 年前 |
|
|
ATV · 检查NSWindow当前是否处于缩放状态? 11 年前 |
|
|
BigCola · 如何使用界面生成器管理Cocoa应用程序中的多个窗口 14 年前 |