⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sliderusedlg.cpp

📁 windows mobile环境下滑行条控件的使用。
💻 CPP
字号:
// SliderUseDlg.cpp : 实现文件
//

#include "stdafx.h"
#include "SliderUse.h"
#include "SliderUseDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#endif

// CSliderUseDlg 对话框

CSliderUseDlg::CSliderUseDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CSliderUseDlg::IDD, pParent)
	, m_red(0)
	, m_green(0)
	, m_blue(0)
{
	m_hIcon = AfxGetApp()->LoadIcon(IDR_MAINFRAME);
}

void CSliderUseDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	DDX_Text(pDX, IDC_EDIT_RED, m_red);
	DDX_Text(pDX, IDC_EDIT_GREEN, m_green);
	DDX_Text(pDX, IDC_EDIT_BLUE, m_blue);
}

BEGIN_MESSAGE_MAP(CSliderUseDlg, CDialog)
#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
	ON_WM_SIZE()
	ON_WM_HSCROLL()
#endif
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()


// CSliderUseDlg 消息处理程序

BOOL CSliderUseDlg::OnInitDialog()
{
	CDialog::OnInitDialog();

	// 设置此对话框的图标。当应用程序主窗口不是对话框时,框架将自动
	//  执行此操作
	SetIcon(m_hIcon, TRUE);			// 设置大图标
	SetIcon(m_hIcon, FALSE);		// 设置小图标

	// TODO: 在此添加额外的初始化代码
	CSliderCtrl *pSliderRed=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_RED);
	ASSERT(pSliderRed!=NULL);
	//设置滑动条取值范围
	//pSliderRed->SetBuddy(GetDlgItem(IDC_EDIT_RED));
	pSliderRed->SetRange(0,255);
	pSliderRed->SetPos(128);

	CSliderCtrl *pSliderGreen=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_GREEN);
	ASSERT(pSliderGreen!=NULL);
	//设置滑动条取值范围
	//pSliderGreen->SetBuddy(GetDlgItem(IDC_EDIT_GREEN));
	pSliderGreen->SetRange(0,255);
	pSliderGreen->SetPos(128);

	CSliderCtrl *pSliderBlue=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_BLUE);
	ASSERT(pSliderBlue!=NULL);
	//设置滑动条取值范围
	//pSliderBlue->SetBuddy(GetDlgItem(IDC_EDIT_BLUE));
	pSliderBlue->SetRange(0,255);
	pSliderBlue->SetPos(128);
	
	m_red=pSliderRed->GetPos();
	m_green=pSliderGreen->GetPos();
	m_blue=pSliderBlue->GetPos();
	UpdateData(false);
	
	return TRUE;  // 除非将焦点设置到控件,否则返回 TRUE
}

#if defined(_DEVICE_RESOLUTION_AWARE) && !defined(WIN32_PLATFORM_WFSP)
void CSliderUseDlg::OnSize(UINT /*nType*/, int /*cx*/, int /*cy*/)
{
	DRA::RelayoutDialog(
		AfxGetInstanceHandle(), 
		this->m_hWnd, 
		DRA::GetDisplayMode() != DRA::Portrait ? 
			MAKEINTRESOURCE(IDD_SLIDERUSE_DIALOG_WIDE) : 
			MAKEINTRESOURCE(IDD_SLIDERUSE_DIALOG));
}
#endif

void CSliderUseDlg::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar *pScrollBar)
{
	CSliderCtrl *pSliderRed=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_RED);
	m_red=pSliderRed->GetPos();
	CSliderCtrl *pSliderGreen=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_GREEN);
	m_green=pSliderGreen->GetPos();
	CSliderCtrl *pSliderBlue=(CSliderCtrl*)GetDlgItem(IDC_SLIDER_BLUE);
	m_blue=pSliderBlue->GetPos();
	UpdateData(false);

	UpdateData(true);	
	CBrush colorBrush;	
	COLORREF clRGB;	
	clRGB=RGB(m_red,m_green,m_blue);	
		//clRGB=RGB(255,0,0);
	CClientDC* pClientDC;	
	pClientDC=new CClientDC(this);	
	colorBrush.CreateSolidBrush(clRGB);	
	CRect rect(80,120,160,200);	
	pClientDC->FillRect(rect,&colorBrush);	
	delete pClientDC;	
	CDialog::OnHScroll(nSBCode,nPos,pScrollBar);
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -