使用F5键按C 的刷新列表控制



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

当用户按" 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的评论,您必须将返回值设置为1如果您处理消息。

最新更新