고객 용 응용 프로그램을 작성 중이며 문제가 발생했습니다.Windows 응용 프로그램에 포커스가 필요합니다.
응용 프로그램이 휴대 전화와 대화하고 통화 처리를합니다. 그것이하는 일 중 하나는 "응답 전화"버튼을 보여주는 것입니다. 마우스로 이것을 클릭하면 잘 동작합니다.
하지만 고객이 키보드 단축키를 사용하려고하는데 문제가 있습니다. 응용 프로그램의 창에 포커스가 있으면 포커스를 얻을 수 있습니다. 그러나 Windows 포커스 훔치기 방지 기능을 사용하면 사용자가 다른 응용 프로그램에있는 경우 포커스를 얻을 수 없습니다.
여기에서 초점을 도용하는 장단점을 논의하지 마십시오. 나는 그것들을 이미 알고 있으며 그것들을 내 고객에게 주었다. 틀린가, 그렇지 않든, 그들은 여전히 이것을하고 싶어하고, 그들은 법안을 지불하고 있으므로 결정하게됩니다.
여러 가지 해결 방법이 있지만 더 이상 작동하지 않는 것 같습니다. 예를 들어 HKEY_CURRENT_USER \ Control Panel \ Desktop \ ForegroundFlashCount를 3으로 설정하고 ... \ ForegroundLockTimeout을 0으로 설정합니다.
내 옵션은 무엇입니까? 불가능한가요? 아니면 바이러스 검사기가 싫어할 키보드 후크 응용 프로그램을 만들어야합니까?
이것은 Qt/C++ 응용 프로그램입니다. 그러나이 작업을 수행 할 수있는 C# 예제 코드가 있다면 잘됩니다.
도와 주시면 감사하겠습니다.
다음 해결책을 확인하십시오. http://stackoverflow.com/questions/17403511/qwidget-on-mac-os-x-not-focusing-in-qt-5-x –
특정 바로 가기가 필요하면 , 초점을 훔치기 그대로 그대로 두는 것이 좋습니다. 단일 시스템의 바로 가기를 등록하십시오. Qt는이 기능을 제공하지 않지만'QxtGlobalShortcut' 또는 WinAPI 기반 솔루션을 사용할 수 있습니다. –
포커스를 응용 프로그램으로 다시 이동 하시겠습니까? 아니면 바로 가기를 잡으시겠습니까? 그리고 예, 그것은 소름 끼치는 생각입니다. 그러나 고객이 주장한다면, 당신은 무엇을 할 수 있습니까? –