2009-05-08 10 views
2

이벤트에 응답하기 위해 다른 프로그램에서 포커스를받을 수 있습니까? 그렇지만 응답이 처리되면 이전 프로그램으로 다시 전환하여 커서를 복원하십시오.데스크톱 개발 : 포커스 손실 후 목표 기억

이 이상한 질문처럼 들리지만,

  1. 사용자가 의 프로그램의 텍스트 상자에 입력됩니다의 라인을 따라 생각합니다.
  2. 프로그램 B 창이 나타나 사용자가 몇 가지 버튼을 눌러 내용을 확인합니다.
  3. 프로그램 B은 제어를 프로그램 A으로 되돌리고 텍스트 상자의 선택을 복원합니다.

완전한 C# 솔루션이있는 경우 좋지만 보통 때보 다 약간의 노력이 필요할 수 있습니다.

의견이 있으십니까?

답변

1

개인적으로 이렇게하면 사용자가 팝업 창에서 원하지 않는 값을 선택하게 될 가능성이 높습니다. 예를 들어, 누군가 Word에서 타이핑하고 있습니다. 응용 프로그램에서 창을 열면 "Enter"키를 누르면 기본 단추와 같은 값이 선택됩니다. 원하지 않으면 사용자가 양식에서 잘못된 값을 "선택"합니다.

Windows 자체가이 경향이 있으며, 매우 성가시다. 응용 프로그램을 시작하기 위해 바탕 화면 바로 가기를 빠르게 두 번 클릭 한 다음 응용 프로그램을 시작하기 전에 다시 전자 메일로 전환하면 집중된 전자 메일 창에서 포커스를 제거하고 방금 연 응용 프로그램에 포커스를 두는 경향이 있습니다 전자 메일 텍스트 또는 키보드 입력이 방금 열어 본 창으로 이동하게합니다.

1

내 경험에 의하면 Windows 프로그램은이 방법으로 작동합니다. 종종 사용자가 마우스 클릭으로 포커스를 리셋하기 때문에 포커스가 리셋되기 때문에 포커스가 재설정되지 않는 것처럼 보입니다. winforms 앱이라면 잃어버린 포커스/폼 레벨에서 포커스 이벤트를 얻을 수 있습니다.

관련 문제