NSPanel
에는 HUD 패널에 대해 "비 활성화"옵션이 있습니다. NSWindow
에서 작동하는 동일한 기능을 얻으려고합니다. 즉, 클릭을 수락하지만 활성 응용 프로그램이 무엇이든간에 포커스를받지 않는 창을 원합니다 (창에 클릭하기 전에 활성 상태였던 응용 프로그램을 의미합니다. app -이 경우 Sketch).NSWindow에서 NSPanel "비 활성화"스타일 기능을 사용할 수있는 방법이 있습니까?
내가 NSWindow
서브 클래스를 생성하고 NO
-canBecomeMainWindow
및 canBecomeKeyWindow
설정을 시도했지만 그것은하지 않는 것 일-I 그 설정은 동일한 응용 프로그램 내 창 에 적용되기 때문에 생각합니다.
내가 여기서하려는 것은 this flickering을 방지하는 것입니다. Alfred와 같은 앱이 그렇게하고있는 것 같아서 이것이 가능하다고 확신합니다.
안녕하세요. 안녕하세요. 질문을 할 때 코드 스 니펫을 삽입하여 자신이 한 일과 문제가있는 곳을 보여주십시오. 그러면 더 많은 사용자가 귀하의 질문을 자세히 연구하고 답변을 제공하게 될 것입니다. – Patrick
왜 'NSPanel'을 사용하지 않습니까? ** ** 창입니다. 'NSWindow'로 할 수있는 일이라면, 당신은'NSPanel'으로 할 수 있습니다. 기본 동작을 변경하는 몇 가지 메서드/속성이 있지만 재정의를 사용하여 해당 동작을 변경할 수 있습니다. –
@KenThomases 답장을 보내 주셔서 감사합니다. 내가 NSPanel과 마주 치게 된 문제는 어둡지 않고 전체 창을 밝게 만들고 NSWindowTitleHidden을 설정하려고했습니다. 내 NSWindow에는 다음과 같은 모양 설정과 NSVisualEffectView 설정이 있습니다 :'self.window.styleMask = self.window.styleMask | NSFullSizeContentViewWindowMask; self.window.titleVisibility = NSWindowTitleHidden; self.window.titlebarAppearsTransparent = YES;' –