2015-04-29 6 views
3

В моем приложении для Mac я хочу показать некоторый информационный текст, когда пользователи перемещают указатель мыши над кнопкой. Что-то вроде этого:Cocoa osx NSButton показать текст, когда мышь над

enter image description here

Как я могу добиться этого правильно?

Заранее благодарен.

+0

Эй, не могли бы вы показать код для того, как вы делаете раунд изображения? – 7stud

+0

Извините, но это всего лишь пример изображения из google: S, у меня нет кода для этого. – user3065901

+0

Но изображения из Google, как и все изображения, являются квадратными. Например, изображения грустных лиц на google обычно состоят из круглого лица и белого фона, а лицо и фон вместе образуют квадрат. Если я укажу одно из этих изображений в инспекторе атрибутов для кнопки, тогда мое окно отобразит квадратное изображение (круглое лицо плюс белый фон). Итак, вы должны что-то делать в своем коде, чтобы сделать клип изображения в форме кнопки. Я не могу этого сделать, и мне было интересно, как вы это сделали. Или вы изменили белый фон на серый, чтобы соответствовать окну? – 7stud

ответ

12

Это работает для меня в Xcode 6.2:

В Удостоверение инспектора (панели с правой стороны на изображении ниже), в разделе Tool Tip введите «Грустное лицо»:

enter image description here

5

В Interface-Builder вы можете установить «подсказку» для большинства объектов, включая NSButton (Открыть инспектор, затем выбрать раздел «Справка»). Однако, если вы используете NSToolbar, у него также есть всплывающие подсказки; вы можете сделать это программно. Попробуйте ввести setToolTip в свой источник, затем выберите вариант - дважды щелкните его для получения дополнительной информации. (Опция = заместитель).

1

Вы также можете сделать это программно.

(Предположим someButton ваш объект NSButton)

[someButton setToolTip:@"Sad face: Select this option for \"Very poor\""]; 
1

Чтобы программно добавить всплывающую подсказку в Swift. Подкласс соответствующего вида

var trackingArea:NSTrackingArea! 

Добавить отслеживание области для зрения

let opts: NSTrackingAreaOptions = ([NSTrackingAreaOptions.MouseEnteredAndExited, NSTrackingAreaOptions.ActiveAlways]) 
    trackingArea = NSTrackingArea(rect: bounds, options: opts, owner: self, userInfo: nil) 
    self.addTrackingArea(trackingArea) 

Mouse вошел событие

override func mouseEntered(theEvent: NSEvent) { 
self.tooltip = "Sad face : Select the option for very poor" 
} 
+0

Overkill. Используйте свойство 'toolTip', унаследованное от' NSView'. – adib

 Смежные вопросы

  • Нет связанных вопросов^_^