NSPanel
NSPanel
класс реализует специальный вид окна (известный как панель), обычно выполняя вспомогательную функцию.
Для получения дополнительной информации о том, как панели работают (особенно, чтобы узнать, как их поведение отличается от поведения окна), посмотрите Как Работа Панелей.
Наследование
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSAccessibility
-
NSAccessibilityElementProtocol
-
NSAnimatablePropertyContainer
-
NSAppearanceCustomization
-
NSCoding
-
NSObjectProtocol
-
NSUserInterfaceItemIdentification
-
NSUserInterfaceValidations
-
Печатаемый
-
NSAccessibility
-
NSAccessibilityElement
-
NSAnimatablePropertyContainer
-
NSAppearanceCustomization
-
NSCoding
-
NSObject
-
NSUserInterfaceItemIdentification
-
NSUserInterfaceValidations
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
isFloatingPanel - isFloatingPanel
Доступный в OS X v10.0 через OS X v10.9Указывает, является ли получатель плавающей панелью.
Объявление
Objective C
- (BOOL)isFloatingPanel
Возвращаемое значение
YES
true
когда получатель является плавающей панелью,NO
false
иначе.Оператор импорта
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 через OS X v10.9.
См. также
– setFloatingPanel:
level
(NSWindow) -
Средства управления, плавает ли получатель выше нормальных окон.
Объявление
Swift
var floatingPanel: Bool
Objective C
@property(getter=isFloatingPanel) BOOL floatingPanel
Параметры
floatingPanel
YES
true
сделать получатель плавающей панелью (NSFloatingWindowLevel
).NO
false
заставить получатель вести себя как нормальное окно (NSNormalWindowLevel
).Обсуждение
По умолчанию панели не плавают выше других окон. Для панели подходяще плавать выше других окон, только если все следующие условия являются истиной:
Это является достаточно маленьким для не затемнения то независимо от того, что находится позади него.
Это ориентировалось больше к мыши, чем на клавиатуру — т.е. если это не становится ключевым окном или становится таким только при необходимости.
Это должно остаться видимым, в то время как пользователь работает в нормальных окнах приложения — например, если пользователь должен часто перемещать курсор назад и вперед между нормальным окном и панелью (такой как палитра инструментов), или если панель дает информацию, относящуюся к действиям пользователя в нормальном окне.
Когда приложение деактивировано (поведение по умолчанию для панелей), это скрывается.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– isFloatingPanel
setLevel:
(NSWindow) -
Указывает, становится ли получатель ключевым окном только при необходимости.
Объявление
Swift
var becomesKeyOnlyIfNeeded: Bool
Objective C
@property BOOL becomesKeyOnlyIfNeeded
Возвращаемое значение
YES
true
когда панель становится ключевым окном только при необходимости,NO
false
иначе.Обсуждение
По умолчанию этот атрибут установлен в
NO
false
, указание, что панель становится ключевой как другие окна, делает.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Указывает, становится ли получатель ключевым окном только при необходимости.
Объявление
Swift
var becomesKeyOnlyIfNeeded: Bool
Objective C
@property BOOL becomesKeyOnlyIfNeeded
Параметры
becomesKeyOnlyIfNeeded
YES
true
заставляет панель стать ключевым окном только, когда требуется ввод с клавиатуры.NO
false
заставляет панель стать ключевой, когда по ней щелкают.Обсуждение
Это поведение не установлено по умолчанию. Необходимо рассмотреть установку его, только если большинство элементов пользовательского интерфейса в панели не является текстовыми полями, и если выбор, который может быть сделан путем введения текста, может также быть сделан в другом отношении (такой как путем щелчка по элементу в списке).
Если получатель является панелью неактивации, то это становится ключевым, только если возвращается представление хита
YES
true
отneedsPanelToBecomeKey
. Таким образом, панель неактивации может управлять, берет ли она клавиатурный фокус.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
-
Указывает, получает ли получатель события клавиатуры и события от нажатия мыши, даже когда некоторое другое окно выполняется модально.
Объявление
Swift
var worksWhenModal: Bool
Objective C
@property BOOL worksWhenModal
Возвращаемое значение
YES
true
когда получатель получает события клавиатуры и события от нажатия мыши, даже когда некоторое другое окно выполняется модально,NO
false
иначе.Обсуждение
По умолчанию этот атрибут установлен в
NO
false
, указание отсутствия права панели для событий во время модального цикла или сеанса. Посмотрите Как Модальный Windows Work для получения дополнительной информации о модальных окнах и панелях.Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– setWorksWhenModal:
runModalForWindow:
(NSApplication
)runModalSession:
(NSApplication
) -
Указывает, получает ли получатель события клавиатуры и события от нажатия мыши, даже когда некоторое другое окно выполняется модально.
Объявление
Swift
var worksWhenModal: Bool
Objective C
@property BOOL worksWhenModal
Параметры
worksWhenModal
YES
true
заставить панель получить события даже во время модального цикла или сеанса.NO
false
препятствовать тому, чтобы панель получила события, в то время как работают модальный цикл или сеанс.Обсуждение
Посмотрите Как Модальный Windows Work для получения дополнительной информации о модальных окнах и панелях.
Оператор импорта
Objective C
@import AppKit;
Swift
import AppKit
Доступность
Доступный в OS X v10.0 и позже.
См. также
– worksWhenModal
runModalForWindow:
(NSApplication
)runModalSession:
(NSApplication
)
-
Эти константы определяют значения, возвращенные
NSRunAlertPanel
функционируйте иNSApplication
методrunModalSession:
когда модальный сеанс выполняется сNSPanel
еслиNSGetAlertPanel
функция.NSRunAlertPanel
иNSGetAlertPanel
осуждаются; использоватьNSAlert
APIs вместо этого.Объявление
Swift
var NSAlertDefaultReturn: Int { get } var NSAlertAlternateReturn: Int { get } var NSAlertOtherReturn: Int { get } var NSAlertErrorReturn: Int { get }
Objective C
enum { NSAlertDefaultReturn = 1, NSAlertAlternateReturn = 0, NSAlertOtherReturn = -1, NSAlertErrorReturn = -2 };
Константы
-
NSAlertDefaultReturn
NSAlertDefaultReturn
Пользователь нажал кнопку по умолчанию.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
NSAlertAlternateReturn
NSAlertAlternateReturn
Пользователь нажал альтернативную кнопку.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
NSAlertOtherReturn
NSAlertOtherReturn
Пользователь нажал вторую альтернативную кнопку.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
NSAlertErrorReturn
NSAlertErrorReturn
Предупреждение не может идентифицировать причину, это было закрыто; это, возможно, было закрыто внешним источником или кнопкой кроме упомянутых выше.
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.10.
-
-
Эти константы определяют возможные возвращаемые значения для таких методов как
runModal...
методыNSOpenPanel
класс, которые говорят, какая кнопка (OK или Отмена) пользователь щелкнула по открытой панели.В
NSWindow
объект, используйтеNSModalResponse
константы вместо этого.Объявление
Objective C
enum { NSOKButton = 1, NSCancelButton = 0 };
Константы
-
NSPanel
класс определяет следующие константы для стилей панели:Объявление
Swift
var NSDocModalWindowMask: Int { get } var NSUtilityWindowMask: Int { get } var NSNonactivatingPanelMask: Int { get } var NSHUDWindowMask: Int { get }
Objective C
enum { NSUtilityWindowMask = 1 << 4, NSDocModalWindowMask = 1 << 6, NSNonactivatingPanelMask = 1 << 7 NSHUDWindowMask = 1 << 13 };
Константы
-
NSDocModalWindowMask
NSDocModalWindowMask
Панель создается как модальный лист.
Доступный в OS X v10.0 и позже.
-
NSUtilityWindowMask
NSUtilityWindowMask
Панель создается как плавающее окно.
Доступный в OS X v10.0 и позже.
-
NSNonactivatingPanelMask
NSNonactivatingPanelMask
Панель может получить ввод с клавиатуры, не активируя приложение владения.
Допустимый только для экземпляра
NSPanel
или его подклассы; не допустимый для окна.Доступный в OS X v10.2 и позже.
-
NSHUDWindowMask
NSHUDWindowMask
Панель создается как прозрачная панель (иногда называемый “настороженным дисплеем”).
Допустимый только для экземпляра
NSPanel
или его подклассы; не допустимый для окна.Используя оператора битового «ИЛИ» C,
NSHUDWindowMask
может быть объединен с другими масками стиля (некоторые из которых документируются вWindow Style Masks
) со следующими результатами:NSBorderlessWindowMask
Безграничное окно с прозрачной прозрачностью панели и уровнем окна.
Использующая панель
NSBorderlessWindowMask
не может стать ключевым, если Вы не реализуетеcanBecomeKeyWindow
возвратитьсяYES
true
. Обратите внимание на то, что можно также установить маску стиля панели вNSBorderlessWindowMask
в Интерфейсном Разработчике путем отмены выбора Строки заголовка в разделе Appearance инспектора Атрибутов.NSTitledWindowMask
Названное окно с прозрачной прозрачностью панели и уровнем окна. Эта комбинация может быть дополнительно объединена с любым следующим:
NSClosableWindowMask
Названное окно с прозрачной рамкой для закрытия панели, прозрачностью и уровнем окна.
NSResizableWindowMask
Названное окно с прозрачной панелью изменяет размеры угла, прозрачности и уровня окна.
NSNonactivatingPanelMask
Когда это окно является ключевым окном, никакой эффект на появление, но приложение владения не не обязательно активен.
Следующие константы не могут быть объединены с
NSHUDWindowMask
:NSMiniaturizableWindowMask
,NSTexturedBackgroundWindowMask
,NSDocModalWindowMask
, иNSUnifiedTitleAndToolbarWindowMask
.Доступный в OS X v10.6 и позже.
-