MFC:当将焦点设置为子窗口时,如何防止应用程序成为前景窗口

MFC: How to prevent app from becoming foreground window when setting focus to a child window

本文关键字:窗口 何防止 应用程序 焦点 设置 MFC      更新时间:2023-10-16

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

当SetFocus发生时,如果应用程序有焦点,这很好,tab改变,正确的控件有焦点。但是,如果应用程序没有焦点(即用户在等待操作完成时点击了另一个应用程序),子窗口上的SetFocus会导致父MDI框架中发生OnActivate,应用程序成为前景窗口。

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

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