全局禁用工具提示

时间:2015-03-14 18:08:32

标签: macos cocoa tooltip nsapplication

好的,我使用了界面构建器并为所有控件添加了工具提示。

我想为用户提供一个菜单项“禁用工具提示”。

如何在cocoa应用程序上全局禁用所有工具提示?

1 个答案:

答案 0 :(得分:1)

不是直接在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中的Bindings Inspector将Tooltip绑定到Property:

enter image description here

如您所见,此策略可以在您的应用程序运行时动态自定义工具提示。