MFC:如何在将焦点设置到子窗口时阻止应用程序成为前景窗口

时间:2011-12-13 14:50:07

标签: c++ winapi visual-c++ mfc mfc-feature-pack

我们有一个MFC MDI应用程序,在操作过程中可以将焦点设置在给定的控件上,例如:如果操作的结果更适合于不同的选项卡,它可能会更改活动选项卡。

如果应用程序在发生SetFocus时具有焦点,则此功能正常,标签更改并且正确的控件具有焦点。但是,如果应用程序没有焦点(即用户在等待操作完成时单击了另一个应用程序),则子窗口上的SetFocus会导致在父MDI框架中发生OnActivate,并且应用程序将成为前景窗口。

如果用户在另一个应用程序中工作,我们如何将SetFocus设置为子窗口而不使整个应用程序成为前台窗口。

1 个答案:

答案 0 :(得分:0)

您是否尝试使用CDialog :: GotoDlgCtrl更改焦点?