Jos*_*hua 11 cocoa objective-c
如果选中了复选框,我如何设置复选框隐藏停靠栏图标?我已经设置了一个复选框切换菜单栏项目,但是如何使用停靠栏图标?寻找一些代码来做到这一点.谢谢!
Huy*_*yen 12
上面已经介绍了Swift的更新,使用两种方式(它们给出了相同的结果):
public class func toggleDockIcon_Way1(showIcon state: Bool) -> Bool {
// Get transform state.
var transformState: ProcessApplicationTransformState
if state {
transformState = ProcessApplicationTransformState(kProcessTransformToForegroundApplication)
}
else {
transformState = ProcessApplicationTransformState(kProcessTransformToUIElementApplication)
}
// Show / hide dock icon.
var psn = ProcessSerialNumber(highLongOfPSN: 0, lowLongOfPSN: UInt32(kCurrentProcess))
let transformStatus: OSStatus = TransformProcessType(&psn, transformState)
return transformStatus == 0
}
public class func toggleDockIcon_Way2(showIcon state: Bool) -> Bool {
var result: Bool
if state {
result = NSApp.setActivationPolicy(NSApplicationActivationPolicy.Regular)
}
else {
result = NSApp.setActivationPolicy(NSApplicationActivationPolicy.Accessory)
}
return result
}
Run Code Online (Sandbox Code Playgroud)
小智 9
我使用这段代码:
BOOL iconInDock = [[NSUserDefaults standardUserDefaults] boolForKey:smHideShowIcon];
if (iconInDock) {
ProcessSerialNumber psn = { 0, kCurrentProcess };
// display dock icon
TransformProcessType(&psn, kProcessTransformToForegroundApplication);
}
Run Code Online (Sandbox Code Playgroud)
好吧,如果我在Info.plist中设置LSUIElement = 1,它对我的应用程序有效.这个代码只适用于show,但我怎么能隐藏图标?
| 归档时间: |
|
| 查看次数: |
4941 次 |
| 最近记录: |