Sự cố: Tôi có một cửa sổ chínhWindow và một cửa sổ khác childWindow
được thêm vào mainWindow
. childWindow thuộc loại WindowExt
lớp học. Lớp học này tôi xác định cho phương thức bắt gọi [NSWindow becomeKeyWindow]
phải được gọi sau số [childWindow makeKeyWindow]
. Nếu tôi tạo childWindow và cố gắng làm cho nó keyWindow trên đường tiếp theo:Tại sao NSWindow không có styleMask: NSTitledWindowMask không thể là keyWindow?
WindowExt *childWindow = [[WindowExt alloc] initWithContentRect:addedWindowRect
styleMask:NSBorderlessWindowMask | NSTitledWindowMask
backing:NSBackingStoreBuffered
defer:NO];
[mainWindow addChildWindow:childWindow ordered:NSWindowAbove];
[childWindow makeKeyWindow];
phương pháp [WindowExt becomeKeyWindow]
cho childWindow
được gọi là - tất cả các tốt, childWindow
trở thành keyWindow.
Nhưng nếu tôi có thể tạo childWindow như
WindowExt *childWindow = [[WindowExt alloc] initWithContentRect:addedWindowRect
styleMask:NSBorderlessWindowMask
backing:NSBackingStoreBuffered
defer:NO];
[mainWindow addChildWindow:childWindow ordered:NSWindowAbove];
[childWindow makeKeyWindow];
mà không NSTitledWindowMask
, [WindowExt becomeKeyWindow]
cho childWindow
không bao giờ được gọi là - childWindow
không trở thành keyWindow.