【问题标题】:Can an NSPopupButton selection be highlighted?可以突出显示 NSPopupButton 选择吗?
【发布时间】: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


【解决方案1】:

将 NSPopUpButton 的 type 属性设置为“Popup”给了我一个选中项目的复选标记,并在“关闭”按钮上显示该项目。

【讨论】:

    猜你喜欢
    • 2015-04-05
    • 2012-12-15
    • 2015-12-12
    • 2011-02-24
    • 2020-12-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多