我正在使用MFC编写的对话框应用程序。 Dialog上有3个子控件。 2个按钮(按钮1和按钮2)和HTML控件(从CHtmlView派生的类) HTML控件已导航到包含2个复选框的HTML页面(复选框1和复选框2)。
控制Z-Order焦点应该是: 按钮1 按钮2 再按一次HTML控件按钮1
当焦点转到HTML控件时。我希望它设置为Check Box 1&然后在按Tab键后,它将被设置为复选框2。 但是当我在复选框2中按焦点时按Tab键,我希望它设置为按钮1。
即。 我希望焦点循环如:按钮1 - >按钮2 - >复选HTML控件中的框1 - >在HTML控件中选中框2 - >然后再次按钮1
问题: 当焦点设置为HTML控件时,它不会设置为复选框1并且在焦点打开时按Tab键后复选框不会 回到按钮1。
如果问题不够具有描述性,请告诉我,我会更简化它。 感谢你的时间。
答案 0 :(得分:0)
我无法测试它,但您可能会尝试将WS_EX_CONTROLPARENT样式添加到HTML控件。
int OnInitDialog(...)
{
HWND html = GetDlgItem(dialog, ID_HTML);
DWORD ex_style = GetWindowLong(html, GWL_EXSTYLE);
SetWindowLong(html, GWL_EXSTYLE, ex_tyle | WS_EX_CONTROLPARENT);
return 0;
}
我希望它有效。