【发布时间】:2012-12-18 22:49:46
【问题描述】:
我在我的 OS X 应用程序中使用 NSPopupButton 来向用户显示选项列表。 我这样填充它:
[baudButton removeAllItems];
[baudButton addItemWithTitle:(@"Baud")];
[baudButton addItemWithTitle:(@"600")];
[baudButton addItemWithTitle:(@"1200")];
[baudButton addItemWithTitle:(@"2400")];
有没有办法直观地标记选择,或者我应该使用另一个控件?
【问题讨论】:
-
如果您查看
[NSMenuItem setState: NSOnState/NSOffState]的文档,它会在菜单项上放置/删除复选标记,这是否回答了您的问题? -
是的,这是可以接受的。实施起来似乎有点混乱,如果选择发生变化,必须找到并删除现有的复选标记并添加一个新的复选标记。我也不清楚如何使用 ValidateMenuItem 方法。需要更多的游戏时间,很难将文档翻译成对我有用的东西。
-
你能澄清“如果选择改变了”吗?照原样,NSPopUpButton 将在用户单击或 NSPopUpButton
selectItem方法选择的 NSMenuItem 旁边显示一个复选标记。您的意思是对不同对象的更改应该更改 NSPopUpButton 的 selectedItem 吗?你可以通过binding the NSPopUpButton to an Array Controller. -
我的意思是如果用户选择了按钮菜单中的另一个项目。如果按钮的类型设置为“下拉”,则不会自动显示复选标记。类型必须设置为“PopUp”。
标签: cocoa controls nspopupbutton