zoukankan      html  css  js  c++  java
  • CListCtrl在处理NM_CLICK的时候,怎样推断Ctrl SHIFT ALT键是否按下

    百度 NMITEMACTIVATE
    在 NM_CLICK  的处理函数中。将 NMHDR 结构强制转换成 NMITEMACTIVATE。这一步MS已经帮助我们完毕了,当中,结构体中的 uKeyFlags 就是特殊按键的信息
    LVKF_ALT 表示 alt 键被按下
    LVKF_CONTROL 表示 ctrl 键被按下

    LVKF_SHIFT 表示 shift 键被按下。

    详细程序例如以下:

    void CCCCCCCDlg::OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)
    {
    LPNMITEMACTIVATE pNMItemActivate = reinterpret_cast<LPNMITEMACTIVATE >(pNMHDR);
    // TODO: 在此加入控件通知处理程序代码
    if(LVKF_CONTROL ==pNMItemActivate->uKeyFlags){
    TRACE("%d LVKF_CONTROL ",pNMItemActivate->uKeyFlags);
    }
    if(LVKF_ALT  ==pNMItemActivate->uKeyFlags){
    TRACE("%d LVKF_ALT ",pNMItemActivate->uKeyFlags);
    }
    if(LVKF_SHIFT  ==pNMItemActivate->uKeyFlags){
    TRACE("%d LVKF_SHIFT ",pNMItemActivate->uKeyFlags);
    }

    *pResult = 0;
    }

    输出例如以下:

    2 LVKF_CONTROL
    4 LVKF_SHIFT 
    1 LVKF_ALT 

  • 相关阅读:
    数组元素循环右移
    备忘录模式笔记
    调度算法(笔记)
    meta http-equiv的用法(转)
    常用Maven插件介绍(下)(转)
    常用Maven插件介绍(上)(转)
    maven命令
    JDK并发包
    线程基础
    Jav堆排序
  • 原文地址:https://www.cnblogs.com/yangykaifa/p/6892350.html
Copyright © 2011-2022 走看看