使用 F5 键刷新列表控件 C++

Refreshing List Control with F5 key press C++

我有一个显示我的数据库用户列表的列表控件。我还有一个刷新列表控件的功能(目前它映射到一个 "Refresh" 按钮)。

当用户按下"F5"键时,我想调用我的刷新函数

我发现了一个事件LVN_KEYDOWN(表示有一个键被按下)。经过一番研究,我发现 "F5" 的虚拟键码是 VK_F5。我无法将两者放在一起,我如何检查(在我的事件中) "F5" 键是按下的那个?我已经尝试了一些类似于下面代码的事情:

void ListOption::OnLvnKeydownList1(NMHDR *pNMHDR, LRESULT *pResult)
{
    LPNMLVKEYDOWN pLVKeyDow = reinterpret_cast<LPNMLVKEYDOWN>(pNMHDR);

    // TODO: Add your control notification handler code here
    if(pLVKeyDow == (LPNMLVKEYDOWN)VK_F5)  
        callRefreshFunction();

    *pResult = 0;
}

wVKey成员包含虚拟键码:

if(pLVKeyDow->wVKey == VK_F5) {
    callRefreshFunction();
    *rResult = 1;
}

根据对 MSDN 的评论,您必须将 return 值设置为 1 如果您处理消息。