2011-12-13 4 views
0

작업 과정에서 지정된 컨트롤에 포커스를 설정할 수있는 MFC MDI 앱이 있습니다. 작업 결과가 다른 탭에 더 적합한 경우 활성 탭을 변경할 수 있습니다.MFC : 하위 창에 포커스를 설정할 때 앱이 포 그라운드 창이되지 않도록하는 방법

SetFocus가 발생했을 때 앱에 포커스가있는 경우 탭이 변경되고 올바른 컨트롤에 포커스가 있습니다. 그러나 앱에 포커스가 없다면 (예 : 사용자가 작업 완료를 기다리는 동안 다른 앱을 클릭 한 경우) 하위 창의 SetFocus가 부모 MDI 프레임에서 OnActivate를 발생시키고 앱이 전경 윈도우가됩니다.

사용자가 다른 앱에서 작업하는 경우 전체 앱이 전경 윈도우가되지 않고 어떻게 자식 창으로 설정해야합니까?

+0

글쎄, 이상한 일은 없어야합니다. 누구나 AttachThreadInput()을 망치고 있습니까? –

+0

내가 아는 것은 아니지만 이것이 MFC이며 백그라운드에서 계속 진행되고 있습니다. – snowdude

답변

0

CDialog :: GotoDlgCtrl을 사용하여 포커스를 변경하려고 했습니까?

+0

답변 해 주셔서 감사합니다. 포커스를 설정하는 실제 컨트롤은 CDialog가 아닌 CWnd입니다. – snowdude

관련 문제