>

포커스로 떠 다니는 스포트라이트가 궁금하지만 다른 창에도 여전히 포커스가 있습니다!

window?.level = Int(CGWindowLevelForKey(.maximumWindow)) 로 다른 모든 창 위에 창을 띄울 수 있습니다. 하지만 두 창에 모두 초점을 맞출 수는 없습니다.

ShowWithoutActivating 와 같은 기능이 있습니까  코코아에서?


  • 답변 # 1

    이 문제를 조금 해결해 왔으며 맨 앞 창이 맨 앞 응용 프로그램과 같은 프로세스가 아닐 때이 효과를 낼 수있는 것 같습니다 .Spotlight가 아마도하고 있다고 생각합니다. 나는 이것을 이렇게 달성 할 수 있습니다 :

    <올>

    앱의 Info.plist에서 LSUIElement를 YES로 설정하십시오.

    인터페이스 빌더에서 창의 클래스를 NSPanel로 설정하고 속성 관리자에서 "비활성화"를 확인한 다음 Identity Inspector의 사용자 정의 런타임 속성에서 "isFloatingPanel"을 YES로 설정하십시오.

    일부 다른 응용 프로그램이 앞에있는 동안 (방금 다른 응용 프로그램을 앞에 놓고 텍스트 필드를 선택할 시간을주기 위해 5 초 지연을 사용했습니다) makeKeyAndOrderFront()  뒤에 orderFrontRegardless()  창에서.

    이 작업을 수행하면 다음과 같은 결과가 나타납니다 (Xcode의 "모듈"필드에 여전히 초점 링이 표시됩니다) :

  • 이전 php - 각 옵션 태그 내에서 텍스트의 후반부를 제거하는 방법은 무엇입니까?
  • 다음 클래스를 키로 사용하는 C # 사전