我正在创建 NSPopUpButton 和 NSPopUpButtonCell 的自定义子类,以在按钮顶部显示一个单独的图标,而不是通常的文本。
为此,我将覆盖
- (void)drawInteriorWithFrame:(NSRect)cellFrame inView:(NSView *)controlView
在我的按钮单元子类中以适当的大小和位置绘制我的图标。当用户将鼠标悬停在按钮上时,我想更改图像。我唯一的问题是我无法弄清楚如何重新显示按钮单元格(通过再次调用 drawInterior...)。默认情况下,它似乎只在单击按钮或焦点移动到另一个窗口时重新显示。我试过 setNeedsDisplay:YES 但这似乎没有。