Установка появления окна

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

Установка стиля окна

Периферийные элементы, что окно дисплеи определяет свой стиль. Хотя Вы не можете получить доступ и управлять ими непосредственно, можно определить в инициализации, имеет ли окно их путем обеспечения маски стиля для инициализатора. Существует четыре возможных элемента стиля, specifiable путем объединения их значений маски с помощью оператора битового «ИЛИ» C:

Элемент

Значение маски

Строка заголовка

NSTitledWindowMask

Близкая кнопка

NSClosableWindowMask

Кнопка свертывания окна

NSMiniaturizableWindowMask

Изменять размеры панель, граница или поле

NSResizableWindowMask

Можно также указать NSBorderlessWindowMask, когда ни один из этих элементов стиля не используется.

Как правило, Вы устанавливаете появление окна один раз, когда оно сначала создается. Иногда, однако, Вы хотите включить или отключить кнопку в строке заголовка для отражения измененного контекста. Чтобы сделать это, Вы сначала получаете кнопку из окна с помощью standardWindowButton: из NSWindow метод и затем набор его включенное состояние, как в следующем примере.

NSButton *closeButton = [window standardWindowButton:NSWindowCloseButton];
[closeButton setEnabled:NO];

Константы, требуемые получить доступ к стандартным виджетам строки заголовка, определяются в ссылке API для NSWindow.

Выбирание цвета и прозрачности окна

Можно выбрать цвет фона окна и прозрачность с помощью методов setBackgroundColor: и setAlphaValue:, соответственно.

Можно выбрать цвет фона окна к ненепрозрачному цвету. Это не влияет на строку заголовка окна; если окно не непрозрачно, как проиллюстрировано в следующем примере, это только делает сам фон прозрачным.

[myWindow setOpaque:NO]; // YES by default
NSColor *semiTransparentBlue =
    [NSColor colorWithDeviceRed:0.0 green:0.0 blue:1.0 alpha:0.5];
[myWindow setBackgroundColor:semiTransparentBlue];

Представления, помещенные в ненепрозрачное окно с цветом прозрачного фона, сохраняют свою собственную непрозрачность. Если Вы хотите сделать все окно (включая строку заголовка и представления помещенным в окно) прозрачный, необходимо использовать setAlphaValue:.

Установка цветового пространства окна

Можно установить использование цветового пространства окна setColorSpace: и может получить использование пространства текущего цвета окна colorSpace. NSColorSpace объекты для использования с setColorSpace: может быть получен с помощью методов класса, задокументированных в Ссылку класса NSColorSpace.

Установка толщины границ содержания окна

Начинаясь в версии 10.5 OS X, окнам автоматически применились к текстурированному градиенту их фоны. Область, на которой нарисован градиент, определяется автоматически. Время от времени, однако, это может не работать правильно. Если Ваше окно не выглядит корректным с автоматическим вычислением градиента, отключите его путем вызова setAutorecalculatesContentBorderThickness:forEdge: со значением NO и край для отключения автоматического вычисления для. К значению этого свойства можно получить доступ с помощью метода autorecalculatesContentBorderThicknessForEdge:.

Можно также установить и получить доступ к толщине границ содержания вручную с помощью setContentBorderThickness:forEdge: и contentBorderThicknessForEdge:, соответственно.