全局禁用工具提示
Disabling tooltips globally
好的,我已经使用了界面生成器并为所有控件添加了工具提示。
我想为用户提供一个菜单项 "disable tooltips"。
如何在 cocoa 应用程序中全局禁用所有工具提示?
与其直接在 Interface Builder 中设置工具提示的文本,不如在视图控制器(或其他可绑定对象)中为它们创建 NSString 属性。使用布尔值 属性 控制是否显示工具提示。
@interface YourViewController : NSViewController
@property (readonly) NSString *thisTooltip;
@property (readonly) NSString *thatTooltip;
@property BOOL showTooltips;
@end
@implementation YourViewController
- (NSString *)thisTooltip {
if (showTooltips) {
return @"This is a tooltip";
}
else return @"";
}
- (NSString *)thatTooltip {
if (showTooltips) {
return @"That is a tooltip";
}
else return @"";
}
@end
使用 IB 中的绑定检查器将工具提示绑定到 属性:
如您所见,此策略使动态自定义工具提示成为可能,而您的应用程序是 运行。
好的,我已经使用了界面生成器并为所有控件添加了工具提示。
我想为用户提供一个菜单项 "disable tooltips"。
如何在 cocoa 应用程序中全局禁用所有工具提示?
与其直接在 Interface Builder 中设置工具提示的文本,不如在视图控制器(或其他可绑定对象)中为它们创建 NSString 属性。使用布尔值 属性 控制是否显示工具提示。
@interface YourViewController : NSViewController
@property (readonly) NSString *thisTooltip;
@property (readonly) NSString *thatTooltip;
@property BOOL showTooltips;
@end
@implementation YourViewController
- (NSString *)thisTooltip {
if (showTooltips) {
return @"This is a tooltip";
}
else return @"";
}
- (NSString *)thatTooltip {
if (showTooltips) {
return @"That is a tooltip";
}
else return @"";
}
@end
使用 IB 中的绑定检查器将工具提示绑定到 属性:
如您所见,此策略使动态自定义工具提示成为可能,而您的应用程序是 运行。