Cocoa NSWindow сохраняет строку заголовка в полноэкранном режиме

Я хотел бы знать, как сохранить строку заголовка (и кнопки) в полноэкранном режиме. По сути, он скрыт, и вам нужно переместить курсор вверх, чтобы строка заголовка стала видимой. Но Google Chrome, сохраните строку заголовка. Любая идея, как это сделать?

Обновление со скриншотами:

Хром в полноэкранном режиме

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

Chrome в полноэкранном режиме с курсором вверху:

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

в обоих случаях кнопки все еще видны.


person ben5blg    schedule 27.06.2018    source источник
comment
Даже хромированная строка заголовка не отображается в полноэкранном режиме. Если вы говорите максимизировать, то это можно сделать. Пожалуйста, покажите скриншот для лучшего понимания.   -  person Anoop Vaidya    schedule 27.06.2018


Ответы (2)


То, что вы хотите сделать, на самом деле не соответствует рекомендациям Apple UI, но единственный способ получить такое поведение — скрыть кнопки окна по умолчанию и реализовать их самостоятельно. Конечно, для этого потребуется установить внешний вид в разных режимах (окно активно/деактивировано) и в зависимости от местоположения мыши.

Чтобы получить стандартные кнопки окна, недостаточно разместить их в другом месте в представлении содержимого окна, поскольку они будут скрыты и отображены в строке заголовка окна в полноэкранном режиме.

Действие, которое вы бы использовали для кнопки закрытия:

view.window?.orderOut(self)

для миниатюризации

view.window?.miniaturize(self)

и для полноэкранного режима (максимум):

view.window?.toggleFullScreen(self)

Если у вас есть какие-либо вопросы, дайте мне знать.

Хорошего дня

person Marc T.    schedule 28.06.2018

Вы можете попробовать установить флажок полноразмерного просмотра содержимого вашего окна. введите здесь описание изображения

person Sangram Shivankar    schedule 27.06.2018
comment
это уже дело. Даже при этом в полноэкранном режиме строка заголовка исчезает. Я знаю, что это нормальное поведение: developer.apple.com/documentation/ appkit/nswindow/stylemask/. Но я хотел бы изменить его - person ben5blg; 27.06.2018