有什么方法可以使NSButton可拖动吗?我的意思是像在最终构建的应用程序中一样,用户可以拖动NSButton。

我正在尝试做一些几乎“仪表板”风格的事情……就像可拖动的东西。目前,我只是使用NSButtons并保持原位,但如果可以拖动它们,那就太好了。

最佳答案

NSButton通常会吞噬所有鼠标事件。因此,您必须继承NSButton的子类,并且不仅要覆盖拖动处理,还要覆盖单击处理:

- (void)mouseDown:(NSEvent *)theEvent
{
    [self highlight:YES];
}

- (void)mouseDragged:(NSEvent *)event
{
// start a dragging session
}

- (void)mouseUp:(NSEvent *)theEvent
{
    [self performClick:self];
}

关于objective-c - 可拖动的NSButton,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4937869/

10-13 03:23