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

时间:2015-05-08 13:50:34

标签: c++ mfc key-events listcontrol

我有一个List Control,显示了我的数据库用户列表。我还有一个刷新列表控件的函数(当前它映射到"刷新"按钮)。

当用户按下" 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;
}

1 个答案:

答案 0 :(得分:2)

List成员包含虚拟密钥代码:

wVKey

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