zoukankan      html  css  js  c++  java
  • slider改变对话框颜色

    COLORREF m_clrBkgndColor;
    CBrush *m_pBkBrush;
    CSliderCtrl *p_sliderRed;
    CSliderCtrl *p_sliderGreen;
    CSliderCtrl *p_sliderBlue;




    BOOL CcolorDlg::OnEraseBkgnd(CDC* pDC)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    if (m_pBkBrush)
    {
    CRect cr;
    GetClientRect(cr);
    pDC->FillRect(&cr,m_pBkBrush);
    return TRUE;
    }

    return CDialogEx::OnEraseBkgnd(pDC);
    }

    void CcolorDlg::SetBackgroundColor(COLORREF color, BOOL bRepaint )
    {
    m_clrBkgndColor=color;
    if (m_pBkBrush)
    {
    delete m_pBkBrush;
    }

    m_pBkBrush=new CBrush(m_clrBkgndColor);
    if (bRepaint)
    {
    Invalidate();
    }

    }


    void CcolorDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)
    {
    // TODO: 在此添加消息处理程序代码和/或调用默认值
    UpdateData();

    int red=p_sliderRed->GetPos();
    int green=p_sliderGreen->GetPos();
    int blue=p_sliderBlue->GetPos();

    SetBackgroundColor(RGB(red,green,blue),TRUE);

    CDialogEx::OnHScroll(nSBCode, nPos, pScrollBar);
    }

    初始化:

    BOOL CcolorDlg::OnInitDialog()
    {
    。。。。。。。。
    // TODO: 在此添加额外的初始化代码
    m_pBkBrush=NULL;
    p_sliderRed=(CSliderCtrl*)GetDlgItem(IDC_SLIDER1);
    p_sliderRed->SetRange(0,255);

    p_sliderGreen=(CSliderCtrl*)GetDlgItem(IDC_SLIDER2);
    p_sliderGreen->SetRange(0,255);

    p_sliderBlue=(CSliderCtrl*)GetDlgItem(IDC_SLIDER3);
    p_sliderBlue->SetRange(0,255);

    return TRUE; // 除非将焦点设置到控件,否则返回 TRUE
    }



  • 相关阅读:
    windows下mysql数据库导入导出
    比较两个数组,根据id删除相同的对象
    angular子组件给父组件传值
    angular父组件给子组件传值
    angular获取dom节点
    angular创建服务
    forEach和for包含异步调用的区别
    用某种符号或字符替换某些字符
    嵌套函数和闭包
    JavaScript 递归
  • 原文地址:https://www.cnblogs.com/tiandsp/p/2218368.html
Copyright © 2011-2022 走看看