本文整理汇总了C++中ContainerWindow::SetFocus方法的典型用法代码示例。如果您正苦于以下问题:C++ ContainerWindow::SetFocus方法的具体用法?C++ ContainerWindow::SetFocus怎么用?C++ ContainerWindow::SetFocus使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类ContainerWindow
的用法示例。
在下文中一共展示了ContainerWindow::SetFocus方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: AssertThread
void
Window::SetEnabled(bool enabled)
{
AssertThread();
const bool was_focused = !enabled && HasFocus();
::EnableWindow(hWnd, enabled);
if (was_focused && ::GetFocus() == NULL) {
/* The window lost its keyboard focus because it got disabled; now
the focus is in limbo, and can only be recovered by clicking on
another control, which is impossible for Altair users (no touch
screen). This is a major WIN32 API misdesign that is
documtented here:
https://blogs.msdn.com/b/oldnewthing/archive/2004/08/04/208005.aspx */
ContainerWindow *root = GetRootOwner();
if (root != NULL)
/* to work around this problem, we pass focus to the main
window, which will bounce it to the next dialog control; this
kludge is needed because this Window doesn't know the dialog
code, and trusts that the main window will do the right
thing */
root->SetFocus();
}
}