Курсор над NSView размещен над NSTextField - PullRequest
0 голосов
/ 21 марта 2012

У меня есть полупрозрачный подкласс NSView, который действует как подсказка.Когда подсказка рисуется на экране, она рисует поверх формы и поэтому покрывает пару NSTextField.

Когда я наводю курсор мыши на подсказку в тех местах, где существует NSTextField,курсор изменится на курсор стиля ввода.

Как я могу предотвратить изменение курсора?

1 Ответ

1 голос
/ 21 марта 2012

Перекрывающиеся представления не очень хорошо поддерживаются в Какао, и поведение не определено.

Вместо этого ваше представление всплывающей подсказки должно быть в собственном окне без полей, достаточно большом, чтобы вместить ваше представление.Окно всплывающей подсказки должно быть дочерним окном главного окна, к которому оно прикреплено.Чтобы сделать окно дочерним для другого окна, вы используете метод addChildWindow:ordered: NSWindow.

Дочерние окна присоединяются к родительскому окну и будут перемещаться вместе с родительским окном при перемещении родительского окна.Если вы просто откроете новое окно, не сделав его дочерним, оно будет «оставлено позади», если другое окно будет перемещено.

Чтобы создать окно без полей, передайте NSBorderlessWindowMask как styleMask вinitWithContentRect:styleMask:backing:defer: метод NSWindow.

...