2

我有一个驻留在菜单栏中的应用程序,很像这个
菜单应用

我正在尝试为它创建一个首选项窗格,如苹果文档中所述
该指南展示了如何为系统偏好创建 prefpane 插件和为独立应用程序创建偏好窗口。然而,在第二种情况下,它似乎遗漏了一些东西。

-(IBAction) displayPreferences:(id)sender;因此,当用户单击菜单中的“首选项...”时,我有一个带有动作的主应用程序类。
而且我还有控制器扩展NSPreferencePane并连接到NSWindowInterface Builder 中的对象(就像文档描述的那样)。

问题是,如何连接它们?IE,

-(IBAction) displayPreferences:(id)sender {
  // what do we write here to display preferences window?
}

谢谢!

4

2 回答 2

2

如果您想让系统偏好设置在您的偏好设置窗格中打开,您可以为您的.prefPane捆绑包创建一个文件 URL,然后将其发送到-[NSWorkspace openURL:]. 如果您想真正明确地启动选项,您可以使用-[NSWorkspace openURLs:withAppBundleIdentifier:options:additionalEventParamDescriptor:launchIdentifiers:].

于 2011-02-02T21:30:32.763 回答
0

有一种通过苹果脚本打开首选项的非常简单的方法。干得好。

  1. 您必须创建一个按钮操作并将首选项的出口设置为按钮操作
  2. 然后,只需执行以下苹果脚本即可打开主 sys 首选项

    NSString *script = @"tell application \"System Preferences\"\n\tset the current pane to pane \"com.apple.preferences\"\n\tactivate\nend tell";
    
    
    NSAppleScript *appleScript = [[NSAppleScript alloc] initWithSource:script];
    [appleScript executeAndReturnError:nil];
    

脚本对象可以根据用户必须导航的位置进行修改。无论是蓝牙设置还是wifi设置。

于 2016-06-27T12:11:28.520 回答