使用 WTL,我有一个带有两个
CListViewCtrl
子窗口的父窗口。我需要检测 CListViewCtrl
何时获得焦点。我尝试处理WM_COMMAND
,并检查是否发送了LBN_SETFOCUS
,但我没有收到任何消息。
也许点击
CListViewCtrl
不会导致它“获得焦点”,但我不确定如何知道哪个 CListViewCtrl
当前处于活动状态,即如果我在一个列表中选择了一个项目,然后我单击另一个列表,第一个列表保留其选择,但现在颜色较浅。
问题是,如果我在列表视图 A 中选择一个项目,然后在列表视图 B 中选择一个项目,如果我返回并单击列表视图 A 中的所选项目,我不会收到
LVN_ITEMCHANGED
消息,因为所选项目没有改变。
有什么方法可以使这项工作无需继承
CListViewCtrl
,并处理WM_SETFOCUS
以向父级发送自定义消息?这似乎很沉重。