以编程方式打开PrefPane的部分

Nob*_*bik 5 macos cocoa objective-c

我需要在我的应用程序中打开网络prefpane.这很好用

[[NSWorkspace sharedWorkspace] openFile:@"/Path/To/PrefPane"];
Run Code Online (Sandbox Code Playgroud)

但是我怎么能直接打开"代理设置",这是在"高级"下的"网络优先"?

您可以在"高级 - >代理"下的Safari设置中看到这一点

谢谢

小智 7

我发现最简单,最干净的方法是使用Applescript.

NSAppleScript *a = [[NSAppleScript alloc] initWithSource:@"tell application \"System Preferences\"\nactivate\nset current pane to pane \"com.apple.preference.universalaccess\"\nend tell"];
[a executeAndReturnError:nil];
[a release];
Run Code Online (Sandbox Code Playgroud)

将com.apple.preference.universalaccess替换为窗格的名称.以下是首选项窗格名称的完整列表.