zoukankan      html  css  js  c++  java
  • 使用滚动条

    用滚动条控件实现改变rgb三原色的调配

    效果图如图一

                                   图一

    利用类向导为对话框添加OnHScroll方法

    利用类向导为三个滚动条添加成员变量,类型为control类型

    利用类向导为edit_control控件添加成员变量,类型为value,然后选string类型

    在OnInitDialog中初始化滚动条

    	//设置滚动条的滚动范围和当前位置
    	m_RedScroll.SetScrollRange(0, 255);
    	m_GreenScroll.SetScrollRange(0, 255);
    	m_BlueScroll.SetScrollRange(0, 255);
    	m_RedScroll.SetScrollPos(128);
    	m_GreenScroll.SetScrollPos(128);
    	m_BlueScroll.SetScrollPos(128);


    重写OnScroll方法

    int nCurPos = pScrollBar->GetScrollPos();
    	switch (nSBCode)
    	{
    	case SB_LINEDOWN:
    		nCurPos += 1;
    		break;
    	case SB_LINEUP:
    		nCurPos -= 1;
    		break;
    	case SB_PAGEDOWN:
    		nCurPos += 10;
    		break;
    	case SB_PAGEUP:
    		nCurPos -= 10;
    		break;
    	case SB_THUMBTRACK:
    		nCurPos = nPos;
    		break;
    	default:
    		break;
    	}
    	pScrollBar->SetScrollPos(nCurPos);
    
    	BYTE nRed, nGreen, nBlue;
    	nRed = m_RedScroll.GetScrollPos();
    	nGreen = m_GreenScroll.GetScrollPos();
    	nBlue = m_BlueScroll.GetScrollPos();
    	m_StrColorValue.Format("RGB(%d,%d,%d)", nRed, nGreen, nBlue);
    	UpdateData(FALSE);
    	CWnd *pWnd = GetDlgItem(IDC_SHOWCOLOR);
    	CDC *pDC = pWnd->GetDC();
    	CRect Rect;
    	pWnd->GetClientRect(&Rect);
    	CBrush Brush(RGB(nRed, nGreen, nBlue));
    	pDC->FillRect(Rect, &Brush);

    运行后即可




    

    版权声明:

  • 相关阅读:
    Kuangbin带你飞 专题二十 斜率DP
    牛客每日一题3月
    2020 SWJTU-ICPC Training Round #2(18年福建省赛)部分题解
    codeforces每日一题31-40
    SWJTU校队训练&Codeforces&Atcoder&&牛客三月补题
    Kuangbin带你飞-专题九连通图
    POJ 3667 Hotel(线段树区间合并)
    AtCoder Beginner Contest 157(题解)
    2.22专项测试复盘
    2.21专项测试复盘
  • 原文地址:https://www.cnblogs.com/walccott/p/4957127.html
Copyright © 2011-2022 走看看