Какао - Frame External App в полноэкранном режиме? - PullRequest
2 голосов
/ 23 февраля 2011

Мне было интересно, можно ли «кадрировать» внешнее окно приложения в полноэкранном приложении, например This . Если да, приведите пример кода о том, как это сделать.

1 Ответ

0 голосов
/ 23 февраля 2011

OmniDazzle , например, может создавать выноски вокруг окон (и даже элементов пользовательского интерфейса), так что да, можно получить положение и размеры окон и расположить вокруг них свое приложение, не теряя при этом внимания.

=== отредактировано ===

Я приведу некоторые отправные точки для вас, хотя я не могу написать полный код;но, возможно, кто-то найдет это полезным.Вам все равно нужно будет найти положение и размер окна, которое вы хотите «скомпоновать» (или переместить это окно в желаемое положение), и затем ваше окно содержит прозрачную область, которая не реагирует на щелчки.

Начальные точки для создания прозрачного окна (взято из здесь ):

[[self window] setOpaque:NO];
[[self window] setBackgroundColor: [NSColor clearColor]];
[[self window] setAlphaValue:0.999f];     
[[self window] setShowsResizeIndicator:NO];
[self lockFocus];
[[NSColor clearColor] set];
NSRectFill([self bounds]);
[self unlockFocus];

И чтобы окно игнорировало щелчки мыши:

[[self window] setIgnoresMouseEvents:YES];
...