我的项目是带有选项卡控件的简单WIN32对话框。在某些情况下,我想阻止用户更改选项卡。MS文档非常简单 -
返回 TRUE 以防止更改选择,或返回 FALSE 以允许更改选择。
然而,这根本行不通!
代码:
case WM_NOTIFY:
if (((LPNMHDR)lParam)->idFrom == IDC_DEVTABS)
{
if (((LPNMHDR)lParam)->code == TCN_SELCHANGING)
return (INT_PTR)TRUE;
//return (INT_PTR)OnSelChanging(hDlgTab);
if (((LPNMHDR)lParam)->code == TCN_SELCHANGE)
OnSelChanged(hDlgTab);
return (INT_PTR)TRUE;
}Run Code Online (Sandbox Code Playgroud)
我可以看到我的父对话框收到了消息,但选项卡无论如何都在改变。知道如何防止选项卡更改吗?