C++ WINAPI 隐藏的单选按钮没有取消选中

标签 c++ windows winapi

我在 Win32 应用程序中有 2 个单选按钮。
想象一下这个场景:
我正在检查第一个按钮并使用此代码立即将其隐藏:

ShowWindow(RadioButtonTwo, SW_HIDE);

我现在正在检查第二个按钮并立即将其隐藏。 现在我取消隐藏第一个,但它仍然被选中。如何解决?

最佳答案

您可以使用 BM_SETCHECK message 向带有RadioButtonOne句柄的窗口发送消息,BST_UNCHECKED状态如下:

::SendMessage( RadioButtonOne, BM_SETCHECK, BST_UNCHECKED, NULL );

或者,如果您有一个 CButton MFC 类,您可以使用 SetCheckBST_UNCHECKED 作为参数的函数:

CButton btnTest;
btnTest.SetCheck( BST_UNCHECKED );

关于C++ WINAPI 隐藏的单选按钮没有取消选中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17008580/

相关文章:

android - Android NDK printf 输出在哪里?

C++ 无法将 'const char*' 转换为 'std::string*'

javascript - Nodejs Addon - 将正则表达式字符串传递给 C++

windows - 互斥锁和临界区有什么区别?

c++ - 了解 VerQueryValue

c++ - std::is_copy/move_constructible 失败,即使复制/移动构造函数是默认的

使用 CreateWindowEx 创建一个没有图标的窗口

python - pip 如何删除带有前导破折号 : "-pkgname" 的错误安装包

c++ - 如何正确使用 LoadImage 和 DeleteObject?

c - 如何在 Windows 上递归遍历 C 中的目录