이 사용 사례는 비정형이지만, 일부 상황에서만 NSPanel
을 비 활성화시키는 방법을 찾아 내려고 노력했습니다.NSPanel에서 NSNonactivatingPanelMask를 켜고 끄는 것이 가능합니까?
NSPanel
가 초기화되는 경우 (패널의 "비 활성화"속성이 인터페이스 빌더에서 선택된 경우 나), 나중에 코드에서 스타일의 마스크를 변경하는 윈도우의 행동에 아무런 영향이 없습니다 NSNonactivatingPanelMask
:
[panel setStyleMask:([panel styleMask] | NSNonactivatingPanelMask)];
을
styleMask
속성을 검사하면 NSNonactivatingPanelMask
이 켜져 있지만 제목 표시 줄을 클릭해도 응용 프로그램이 활성화됩니다.
반대의 경우도 마찬가지입니다. NSNonactivatingPanelMask
으로 초기화하고 코드를 나중에 ([panel styleMask] & ~NSNonactivatingPanelMask)
마스크로 설정하면 윈도우 동작에 아무런 영향을 미치지 않으므로 이 아니며 제목 표시 줄을 클릭 할 때 응용 프로그램을 활성화하십시오.
스타일 마스크를 재 해석하도록 창에 알리는 것과 같은 간단한 해결책이 있습니까? 그렇지 않은 경우, 가장 적합한 대안은 무엇입니까?