• 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
    }



  • 相关阅读:
    fiddler---Fiddler模拟接口数据(mock)
    Intellij IDEA gradle项目目录介绍
    Windows netstat 查看端口、进程占用
    SpringMVC和spring常见面试题总结
    mybatis一级缓存二级缓存
    Mybatis常见面试题总结
    Spring容器
    深入理解JVM类加载机制
    理解Spring框架中Bean的5个作用域
    编程语言的分类与关系
  • 原文地址:https://www.cnblogs.com/tiandsp/p/2218368.html
Copyright © 2020-2023  润新知