NSBox
NSBox класс реализует простые представления, могущие заголовок сами и рисовать границу вокруг их содержания. Эти объекты известны как поля. Можно использовать поле для группировки, визуально, некоторого числа других представлений.
Разделение на подклассы примечаний
NSBox объект является представлением, чертящим линию вокруг его прямоугольных границ, и это выводит на экран заголовок на или около строки (или не мог бы вывести на экран ни строку, ни заголовок). Можно скорректировать стиль строки (внешняя панель, формировал канавки, или плоскость), а также размещение и шрифт заголовка. NSBox также имеет довольное представление, к которому могут быть добавлены другие представления; это таким образом предлагает путь к приложению для группировки связанных представлений. Вы могли создать пользовательский подкласс NSBox это изменяет или увеличивает его появление, или это изменяет его поведение группировки. Например, Вы могли бы добавить цвет к строкам или фону, добавить стиль новой строки или иметь представления в группе, автоматически хватают к невидимой сетке, когда добавлено.
Методы для переопределения
Необходимо переопределить drawRect: метод (наследованный от NSView) если Вы хотите настроить появление Вашего NSBox объекты. В зависимости от визуального эффекта Вы пытаетесь достигнуть, Вам, вероятно, придется вызвать superреализация сначала. Например, при составлении композита маленького изображения в углу поля Вы вызвали бы реализацию суперкласса сначала. Если бы Вы добавляете новый стиль строки, Вы обеспечили бы способ сохранить запрос на этот тип строки (такой как булева переменная экземпляра и связанные методы доступа). Затем в drawRect:, если бы запрос на этот тип строки существует, Вы нарисовали бы все представление сами (т.е. без вызова super). Иначе, Вы вызвали бы реализацию суперкласса.
Если Вы хотите изменить группирующееся поведение или другие поведенческие характеристики NSBox класс, рассмотрите переопределение setContentView:, sizeToFit, или addSubview: (наследованный от NSView).
Специальные замечания
Если Вы рисуете пользовательское NSBox полностью собой, и Вы хотите, чтобы он точно походил на суперобъект класса (за исключением Ваших изменений), может потребоваться некоторое усилие и время для разбираний в подробных данных.
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSAccessibility -
NSAccessibilityElementProtocol -
NSAnimatablePropertyContainer -
NSAppearanceCustomization -
NSCoding -
NSDraggingDestination -
NSObjectProtocol -
NSUserInterfaceItemIdentification -
Печатаемый -
Reflectable -
NSAccessibility -
NSAccessibilityElement -
NSAnimatablePropertyContainer -
NSAppearanceCustomization -
NSCoding -
NSDraggingDestination -
NSObject -
NSUserInterfaceItemIdentification
Оператор импорта
Swift
import AppKit
Objective C
@import AppKit;
Доступность
Доступный в OS X v10.0 и позже.
-
Возвращает прямоугольник, в котором нарисована граница получателя.
Возвращаемое значение
Прямоугольник тот, в который граница
NSBoxнарисован.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает тип поля получателя.
Возвращаемое значение
Постоянное описание типа поля. Эти константы описаны в
NSBoxType. По умолчанию, тип поляNSBoxNSBoxPrimary.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает тип поля.
Параметры
boxTypeПостоянное описание типа поля; это должно быть допустимым типом поля. Эти константы описаны в
NSBoxType.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращает тип границы получателя.
Возвращаемое значение
Постоянное описание типа границы. Типы границы определяются в
NSView.h. В настоящее время следующие типы границы определяются:NSNoBorder,NSLineBorder,NSBezelBorder,NSGrooveBorder.По умолчанию, тип границы
NSBoxNSGrooveBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает тип границы в
aType, который должен быть допустимым типом границы.Параметры
aTypeПостоянное описание типа границы. Типы границы определяются в
NSView.h. В настоящее время следующие типы границы определяются:NSNoBorder,NSLineBorder,NSBezelBorder,NSGrooveBorder.Обсуждение
Если размер новой границы отличается от той из старой границы, довольное, представление изменено для поглощения различия, и поле отмечено для, восстанавливают изображение.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– borderType– setNeedsDisplay:(NSView) -
isTransparent - isTransparentДоступный в OS X v10.5 через OS X v10.9Указывает, прозрачен ли получатель.
Объявление
Objective C
- (BOOL)isTransparentВозвращаемое значение
YEStrueкогда получатель прозрачен,NOfalseиначе.Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.5 через OS X v10.9.
См. также
-
Указывает, прозрачен ли получатель.
Объявление
Swift
var transparent: BoolObjective C
@property(getter=isTransparent) BOOL transparentПараметры
transparentYEStrueделает получатель прозрачным.NOfalseделает получатель непрозрачным.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Возвращает заголовок получателя.
Возвращаемое значение
Заголовок
NSBox. По умолчанию заголовком поля является «Заголовок».Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает заголовок поля и отмечает область получателя в прямоугольнике заголовка как нуждающийся в дисплее.
Параметры
aStringНовый заголовок
NSBox. Заголовок по умолчаниюNSBox«Заголовок». Если размер нового заголовка отличается от того из старого заголовка, довольное, представление изменено для поглощения различия.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Возвращается объект шрифта раньше составлял заголовок получателя.
Возвращаемое значение
NSFontобъект раньше составлял заголовок.Обсуждение
По умолчанию заголовок составлен с помощью маленького системного шрифта (полученное использование (
smallSystemFontSizeкак параметрsystemFontOfSize:, обаNSFontметоды класса).Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает объект шрифта, раньше составлял заголовок получателя и отмечает область получателя в прямоугольнике заголовка как нуждающийся в дисплее.
Параметры
aFontNSFontобъект раньше составлял заголовок поля.Обсуждение
По умолчанию заголовок составлен с помощью маленького системного шрифта (полученное использование (
smallSystemFontSizeкак параметрsystemFontOfSize:, обаNSFontметоды класса). Если размер нового шрифта отличается от того из старого шрифта, довольное, представление изменено для поглощения различия.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– titleFont– setNeedsDisplayInRect:(NSView) -
Возвращает постоянное представление позиции заголовка.
Объявление
Swift
var titlePosition: NSTitlePositionObjective C
@property NSTitlePosition titlePositionВозвращаемое значение
Постоянное представление позиции заголовка получателя. Посмотрите
NSTitlePositionдля списка этих констант.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает позицию заголовка поля.
Объявление
Swift
var titlePosition: NSTitlePositionObjective C
@property NSTitlePosition titlePositionПараметры
aPositionПостоянное описание позиции заголовка поля. Эти константы описаны в
NSTitlePosition. Позиция по умолчаниюNSAtTop.Обсуждение
Если новая позиция заголовка изменяет размер пограничной зоны поля, довольное, представление изменено для поглощения различия, и поле отмечено, поскольку необходимость восстанавливает изображение.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– titlePosition– setNeedsDisplay:(NSView) -
setTitleWithMnemonic: - setTitleWithMnemonic:(OS X v10.8)Устанавливает заголовок получателя с символом, обозначенным как ключ доступа.
Объявление
Objective C
- (void)setTitleWithMnemonic:(NSString *)stringWithAmpersandОбсуждение
Мнемоника не поддерживается в OS X.
По умолчанию заголовком поля является «Заголовок». Довольное представление автоматически не изменено, и поле, не отмечено для, восстанавливают изображение.
Оператор импорта
Objective C
@import AppKit;Доступность
Доступный в OS X v10.0 и позже.
Осуждаемый в OS X v10.8.
См. также
– setTitleWithMnemonic:(NSCell) -
Возвращается ячейка раньше выводила на экран заголовок получателя.
Объявление
Swift
var titleCell: AnyObject { get }Objective C
@property(readonly, strong) id titleCellВозвращаемое значение
NSCellобъект раньше выводил на экран заголовок.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Возвращает прямоугольник, в котором составлен заголовок получателя.
Возвращаемое значение
Прямоугольник, в котором составлен заголовок.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
Когда получатель является пользовательским полем с простой границей строки, возвращает цвет границы получателя.
Объявление
Swift
@NSCopying var borderColor: NSColorObjective C
@property(copy) NSColor *borderColorВозвращаемое значение
Цвет рамки получателя. Это должно быть пользовательское поле — т.е. это имеет тип
NSBoxCustom— и это должно иметь стиль границNSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает цвет рамки получателя.
Объявление
Swift
@NSCopying var borderColor: NSColorObjective C
@property(copy) NSColor *borderColorПараметры
borderColorЦвет рамки для получателя.
Специальные замечания
Функциональный только, когда тип поля получателя (
boxType)NSBoxCustomи его тип границы (borderType)NSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Когда получатель является пользовательским полем с простой границей строки, возвращает ширину границы получателя.
Объявление
Swift
var borderWidth: CGFloatObjective C
@property CGFloat borderWidthВозвращаемое значение
Ширина рамки получателя. Это должно быть пользовательское поле — т.е. это имеет тип
NSBoxCustom— и это должно иметь стиль границNSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает ширину рамки получателя.
Объявление
Swift
var borderWidth: CGFloatObjective C
@property CGFloat borderWidthПараметры
borderWidthШирина рамки для получателя.
Специальные замечания
Функциональный только, когда тип поля получателя (
boxType)NSBoxCustomи его тип границы (borderType)NSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Когда получатель является пользовательским полем с простой границей строки, возвращает радиус углов получателя.
Объявление
Swift
var cornerRadius: CGFloatObjective C
@property CGFloat cornerRadiusВозвращаемое значение
Угловой радиус получателя. Это должно быть пользовательское поле — т.е. это имеет тип
NSBoxCustom— и это должно иметь стиль границNSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает угловой радиус получателя.
Объявление
Swift
var cornerRadius: CGFloatObjective C
@property CGFloat cornerRadiusПараметры
cornerRadiusУгловой радиус для получателя.
Специальные замечания
Функциональный только, когда тип поля получателя (
boxType)NSBoxCustomи его тип границы (borderType)NSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Когда получатель является пользовательским полем с простой границей строки, возвращает цвет фона получателя.
Возвращаемое значение
Цвет заливки получателя. Это должно быть пользовательское поле — т.е. это имеет тип
NSBoxCustom— и это должно иметь стиль границNSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Указывает цвет заливки получателя.
Параметры
fillColorЦвет заливки для получателя.
Специальные замечания
Функциональный только, когда тип поля получателя (
boxType)NSBoxCustomи его тип границы (borderType)NSLineBorder.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.5 и позже.
См. также
-
Возвращает представление содержания получателя.
Объявление
Swift
unowned(unsafe) var contentView: AnyObject?Objective C
@property(assign) id contentViewВозвращаемое значение
Представление содержания
NSBoxобъект. Довольное представление создается автоматически, когда поле создано и изменено как поле, изменено (Вы никогда не должны отправлять изменяющие кадр сообщения непосредственно в представление содержания поля). Можно заменить егоNSViewсобственный черезsetContentView:метод.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает представление содержания получателя.
Объявление
Swift
unowned(unsafe) var contentView: AnyObject?Objective C
@property(assign) id contentViewПараметры
aViewНовое довольное представление.
NSViewобъект изменен для адаптации в текущей предметной области поля, и поле отмечено для, восстанавливают изображение.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– contentView– setFrameFromContentFrame:– sizeToFit– setNeedsDisplay:(NSView) -
Возвращает расстояния между границей и довольным представление.
Возвращаемое значение
Ширина (горизонтальное расстояние между самым внутренним краем границы и довольным представление) и высота (вертикальное расстояние между самым внутренним краем границы и довольным представление) описание расстояния между границей и довольным представление. По умолчанию это оба 5.0 в системе координат поля.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Устанавливает горизонтальное и вертикальное расстояние между границей получателя и довольным представление.
Параметры
offsetSizeШирина и высота смещения между границей поля и представлением содержания. Горизонтальное значение применяется (учел систему координат поля), полностью и одинаково к левым и правым сторонам поля. Вертикальное значение так же применяется к верху и низу.
Обсуждение
В отличие от изменения других атрибутов поля, таких как его позиция заголовка или тип границы, изменение смещений автоматически не изменяет размеры довольного представление. В целом необходимо отправить a
sizeToFitобменивайтесь сообщениями к полю после изменения размера его смещений. Это сообщение заставляет довольное представление оставаться неизменным, в то время как поле измерено для адаптации вокруг этого.Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
-
Помещает получатель так довольный, что представление находится на указанном кадре.
Объявление
Swift
func setFrameFromContentFrame(_contentFrame: NSRect)Objective C
- (void)setFrameFromContentFrame:(NSRect)contentFrameПараметры
contentFrameПрямоугольник, указывающий кадр представления содержания поля, учтенного система координат суперпредставления поля. Поле отмечено для, восстанавливают изображение.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
См. также
– setContentViewMargins:– setFrame:(NSView)– setNeedsDisplay:(NSView) -
Изменяет размеры и перемещает представление содержания получателя, таким образом, оно просто включает свои подпредставления.
Объявление
Swift
func sizeToFit()Objective C
- (void)sizeToFitОбсуждение
Получатель тогда перемещен и изменен для переноса довольного представление. Ширина получателя ограничивается так, ее заголовок будет полностью выведен на экран.
Необходимо вызвать этот метод после:
Добавление подпредставления (к довольному представление)
Изменение размера или расположения такого подпредставления
Установка полей вокруг довольного представление
Механизм, которым довольное представление перемещено и изменено, зависит от того, отвечает ли объект на свое собственное
sizeToFitсообщение: Если это действительно отвечает, то то сообщение отправляется, и довольное, представление, как ожидают, будет так изменено. если довольное и изменяет размеры довольного само представление, представление не отвечает, поле перемещаетОператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
Типы данных
-
Укажите расположение заголовка поля относительно его границы.
Объявление
Swift
enum NSTitlePosition : UInt { case NoTitle case AboveTop case AtTop case BelowTop case AboveBottom case AtBottom case BelowBottom }Objective C
typedef enum _NSTitlePosition { NSNoTitle = 0, NSAboveTop = 1, NSAtTop = 2, NSBelowTop = 3, NSAboveBottom = 4, NSAtBottom = 5, NSBelowBottom = 6 } NSTitlePosition;Константы
-
NoTitleNSNoTitleПоле не имеет никакого заголовка.
Доступный в OS X v10.0 и позже.
-
AboveTopNSAboveTopЗаголовок расположен выше верхней границы поля.
Доступный в OS X v10.0 и позже.
-
AtTopNSAtTopЗаголовок расположен в верхней границе поля.
Доступный в OS X v10.0 и позже.
-
BelowTopNSBelowTopЗаголовок расположен ниже верхней границы поля.
Доступный в OS X v10.0 и позже.
-
AboveBottomNSAboveBottomЗаголовок расположен выше нижней границы поля.
Доступный в OS X v10.0 и позже.
-
AtBottomNSAtBottomЗаголовок расположен в нижней границе поля.
Доступный в OS X v10.0 и позже.
-
BelowBottomNSBelowBottomЗаголовок расположен ниже нижней границы поля.
Доступный в OS X v10.0 и позже.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
-
Эти константы и тип данных идентифицируют типы поля, в сочетании с типом границы поля, определяющие появление поля.
Объявление
Swift
enum NSBoxType : UInt { case Primary case Secondary case Separator case OldStyle case Custom }Objective C
enum { NSBoxPrimary = 0, NSBoxSecondary = 1, NSBoxSeparator = 2, NSBoxOldStyle = 3, NSBoxCustom = 4 }; typedef NSUInteger NSBoxType;Константы
-
PrimaryNSBoxPrimaryУказывает основное появление поля. Это - тип поля по умолчанию.
Доступный в OS X v10.0 и позже.
-
SecondaryNSBoxSecondaryУказывает вторичное появление поля.
Доступный в OS X v10.0 и позже.
-
SeparatorNSBoxSeparatorУказывает, что поле является разделителем.
Доступный в OS X v10.0 и позже.
-
OldStyleNSBoxOldStyleУказывает, что поле является полем v10.2-стиля OS X.
Доступный в OS X v10.0 и позже.
-
CustomNSBoxCustomУказывает, что появление поля определяется полностью кстати методы конфигурации поля, автоматически не применяя инструкции по интерфейсу пользователя Apple. Посмотрите
“Customizing”для подробных данных.Доступный в OS X v10.5 и позже.
Оператор импорта
Objective C
@import AppKit;Swift
import AppKitДоступность
Доступный в OS X v10.0 и позже.
-
