gpt4 book ai didi

c++ - LVN_ITEMCHANGING - 区分用户输入

转载 作者:行者123 更新时间:2023-11-28 00:54:57 25 4
gpt4 key购买 nike

我正在处理 LVN_ITEMCHANGING 消息,但每次检查状态更改时它都会收到信号。

我需要一种方法来区分用户更改检查状态和我调用 ListView_SetCheckState

有什么简单的方法可以做到这一点吗?可能是我不知道的不同消息?或者有人有什么建议吗?

最佳答案

ListView_SetCheckState 发送 LVM_SETITEMSTATE 消息。 LVN_ITEMCHANGING 消息也被发送到控件的父窗口。这意味着,该函数是同步的,并且 LVN_ITEMCHANGING 处理程序在 ListView_SetCheckState 调用返回之前执行。这允许使用简单的 bool 标志,例如:

bChangedByProgram = TRUE;
ListView_SetCheckState(...);
bChangedByProgram = FALSE;

在 LVN_ITEMCHANGING 处理程序中:

if ( ! bChangedByProgram )
{
// item state is changed by user
}

关于c++ - LVN_ITEMCHANGING - 区分用户输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12010825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com