首页 > 其他 > 详细

SDK_进度条和滑块

时间:2019-05-23 10:04:03      阅读:131      评论:0      收藏:0      [点我收藏+]

进度条和滑块

  • 进度条和滑块属于通用控件,通用控件的使用需要加 CommCtrl.h 头文件

  • 如何初始化进度条和滑块的数值范围和默认的位置

    // 设置默认的范围值
    SendDlgItemMessage(hWnd, IDC_SLIDER1, TBM_SETRANGE, 0, MAKELPARAM(0, 1000));
    SendDlgItemMessage(hWnd, IDC_PROGRESS1, PBM_SETRANGE, 0, MAKELPARAM(0, 1000));
    ?
    // 设置当前的位置
    SendDlgItemMessage(hWnd, IDC_SLIDER1, TBM_SETPOS, TRUE, 500);
    SendDlgItemMessage(hWnd, IDC_PROGRESS1, PBM_SETPOS, 500, 0);
  • 如何响应一个滑块消息,依赖于滚动条

    • 需要注意对响应消息的句柄进行一个过滤

    // 响应滑块的消息
    case WM_HSCROLL:
    {
       // 1. 获取到滑块控件的句柄
       HWND hSlider = GetDlgItem(hWnd, IDC_SLIDER1);
    ?
       // 2. 比对句柄值,看是不是它产生的消息
       if (hSlider == (HWND)lParam)
      {
           // 3. 获取滑块所在的位置
           int nPos = SendDlgItemMessage(hWnd, IDC_SLIDER1, TBM_GETPOS, 0, 0);
    ?
           // 4. 设置进度条的位置
           SendDlgItemMessage(hWnd, IDC_PROGRESS1, PBM_SETPOS, nPos, 0);
      }
    ?
       break;
    }

 

SDK_进度条和滑块

原文:https://www.cnblogs.com/ltyandy/p/10910199.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!