zoukankan      html  css  js  c++  java
  • 003 滑块控件 SliberDemo 热键控件HotKeyDemo 列表框控件List Control

    ---恢复内容开始---

    #SliberDemo 滑块控件

        添加变量 m_slider 设置ID IDC_SLIDER

        设置范围 m_slider.SetRange(0,100);

        类向导给滑块控件增添 WM_HSCROLL 消息

        

        BOOL CSliberDemoDlg::OnInitDialog()
    
        //下面插入代码
    
    
        m_slider.SetRange(0, 100);
    
            //设置滑块的范围
     1             //编写代码
     2 
     3 
     4 void CSliberDemoDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
     5 {
     6     // TODO: 在此添加消息处理程序代码和/或调用默认值
     7     int nNowPol = m_slider.GetPos();
     8     CString strOut;
     9     strOut.Format(L"滑块空间的POS:%d", nNowPol);
    10     SetDlgItemTextW(IDC_OUTPUT,strOut);
    11     CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);
    12 }

        

    #HotKeyDemo 热键控件

        

      拖拽控件

        静态文本

        热键控件 HotKey  设置ID IDC_HOTKEY 设置变量 m_hotKey

        按钮 设置ID IDC_BTN_SET

        设置 类向导设置消息响应 WM_HOTKEY  按钮响应消息

     1 void CHotKeyDlg::OnBnClickedBtnSet()
     2 {
     3     WORD wVk, wMod;
     4     m_hotKey.GetHotKey(wVk, wMod);
     5     if (RegisterHotKey(m_hWnd, 1, wMod,wVk))
     6     {
     7         //::ShowWindow(); ;;WIndows API  全局作用域
     8         ShowWindow(SW_HIDE);
     9     }
    10     else
    11     {
    12         MessageBox(L"注册热键失败!");
    13     }
    14     // TODO: 在此添加控件通知处理程序代码
    15 }
    16 
    17 
    18 void CHotKeyDlg::OnHotKey(UINT nHotKeyId, UINT nKey1, UINT nKey2)
    19 {
    20     // TODO: 在此添加消息处理程序代码和/或调用默认值
    21     //类向导 WM_HOTKEY
    22     if (nHotKeyId == 1)
    23     {
    24         ShowWindow(SW_SHOW);
    25         UnregisterHotKey(m_hWnd, 1);
    26         //反注册HotKey
    27     }
    28     CDialogEx::OnHotKey(nHotKeyId, nKey1, nKey2);
    29 }

    #列表栏List Control 

      

        设置控件 变量 m_list

        // ListCtrlDemoDlg.h : 头文件
    // 实现
    protected:
        HICON m_hIcon;
        CImageList m_imagelist;
    //新变量用于列表框加载 图片
    // CListCtrlDemoDlg 消息处理程序
    
    //BOOL CListCtrlDemoDlg::OnInitDialog()
    
        m_list.InsertColumn(0, L"第一列", LVCFMT_LEFT, 100);
        m_list.InsertColumn(1, L"第二列", LVCFMT_LEFT, 100);
        m_list.InsertColumn(2, L"第三列", LVCFMT_LEFT, 100);
        m_list.InsertColumn(3, L"第四列", LVCFMT_LEFT, 100);
    
            //初始化列表框的列数
    
        m_imagelist.Create(32,32, ILC_COLOR32, 1, 1);
        m_imagelist.Add(m_hIcon);
        m_list.SetImageList(&m_imagelist, LVSIL_SMALL);
        //m_list.SetImageList(&m_imagelist, LVSIL_NORMAL);
            
            //加载图片操作
        //增添
    void CListCtrlDemoDlg::OnBnClickedBtnAdd()
    {
        int nCount = m_list.GetItemCount();
            //获取当前有多少行
        int nTemp = 1;
            //多少列
    
        CString strBuf;
        //第一行用InsertItem第一列
        strBuf.Format(L"第%d行 %d列", nCount + 1, nTemp++);
        m_list.InsertItem(nCount, strBuf, 0);
    
        //第二行就要用 SetItemText 的方法
        strBuf.Format(L"第%d行 %d列", nCount + 1, nTemp++);
        m_list.SetItemText(nCount, 1, strBuf);
    
        // TODO: 在此添加控件通知处理程序代码
    }
    
        //删除
    void CListCtrlDemoDlg::OnBnClickedBtnDel()
    {
        // TODO: 在此添加控件通知处理程序代码
        int nCount = m_list.GetItemCount();
        for (int i = nCount - 1; i >= 0; --i)
        {
            if (m_list.GetItemState(i, LVIS_SELECTED) == LVIS_SELECTED)
            {
                m_list.DeleteItem(i);
                break;
            }
        }
    }
    
    
    void CListCtrlDemoDlg::OnSelchangeComboType()
    {
        // TODO: 在此添加控件通知处理程序代码
        CComboBox* pComboBox = (CComboBox*)GetDlgItem(IDC_COMBO_TYPE);
        
        DWORD dwStyle = 0;
        switch (pComboBox->GetCurSel())
        {
            case 0:    //大图标
                dwStyle = LVS_ICON;
                break;
            case 1:    //小图标
                dwStyle = LVS_SMALLICON;
                break;
            case 2: //List
                dwStyle = LVS_LIST;
                break;
            case 3:    //详细信息
                dwStyle = LVS_REPORT;
                break;
            default:
                return;
    
    
        }
        m_list.ModifyStyle(LVS_TYPEMASK, dwStyle);
    }
  • 相关阅读:
    面试知识点连接汇总:
    spring学习二:jdbc相关回顾以及spring下dao
    spring学习一:spring入门及相关概念介绍
    日常暖手
    日常暖手
    从破解实例到探讨反调试
    一个有趣的CM
    复健小CM
    Windows下利用py2exe生成静默运行的命令行程序
    获取指定窗口内的文本
  • 原文地址:https://www.cnblogs.com/sdk123/p/6832231.html
Copyright © 2011-2022 走看看