我在Windows 8中运行的应用程序的组合框(用C编写,内置在Visual Studio 2012中)出现问题。
如果我点击组合框的小黑箭头,列表会显示,但是当我松开鼠标按钮时会立即关闭。因此,只要按住鼠标按钮,列表就会打开。这意味着无法单击(并选择)列表中的项目!
仅当组合框位于模态窗口中时才会发生。在非模态窗口中,组合框工作正常,但我也需要在模态窗口中。
在Windows 7中,完全相同的应用程序运行正常。组合框保持打开状态(单击箭头并释放鼠标按钮后),直到我单击列表中的某个项目。 在Windows 7兼容模式下运行应用程序无法解决Windows 8计算机上的问题。 当我在点击箭头打开列表后比较Windows消息时,在WM_CAPTURECHANGED之后,我在Windows 8中看到带有通知代码CBN_SELENDOK的消息WM_COMMAND。这可以解释为什么列表关闭,但为什么我从Windows获取此消息? 或者有人知道如何解决这个问题吗?