gpt4 book ai didi

cocoa - NSPopUpButton 单击时自定义单元格内的单元格不会弹出

转载 作者:行者123 更新时间:2023-12-03 16:53:31 24 4
gpt4 key购买 nike

我创建了一个 NSCell 的自定义子类,其中包含一个 NSImageCell、一些 NSTextFieldCell 和一个 NSPopUpButtonCell。

我正在使用以下方法初始化弹出单元格:

    myPopUpCell = [[NSPopUpButtonCell alloc] init];
[myPopUpCell setBordered:NO];
[myPopUpCell setAutoenablesItems:NO];
[myPopUpCell addItemsWithTitles:[NSArray arrayWithObjects:@"Item1", @"Item2", @"Item3"]];

并在drawInteriorWithFrame:inView:中绘制它

一切似乎都工作得很好,除了在运行我的应用程序时单击弹出单元格时,该单元格不会弹出。关于可能出现的问题有什么建议吗?

最佳答案

drawInteriorWithFrame:inView:中绘制弹出按钮单元就可以做到这一点;画它,但别无其他。处理单击事件与绘图无关,因此您必须在自定义单元格中做一些工作来解释鼠标事件,如果它们位于您用于弹出按钮的框架内,请将它们传递到纽扣电池。首先对 NSCell 文档中跟踪鼠标下列出的方法进行子类化,例如 –trackMouse:inRect:ofView:untilMouseUp:,您应该能够弄清楚制作按钮单元格需要什么正确行事。

根据您正在做的事情,您实际上可能会发现自己绘制标题字符串更容易,只需使用 NSMenu 的 +popUpContextMenu:withEvent:forView:

关于cocoa - NSPopUpButton 单击时自定义单元格内的单元格不会弹出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/928014/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com