MFC中SliderCtrl控件的使用

在MFC中滑动条(CSliderCtrl)是个常用的控件,用法如下:

主要要方法有:

1、设置、取得滑动范围:

void SetRange( int nMin, int nMax, BOOL bRedraw = FALSE );

void GetRange( int& nMin, int& nMax ) const;

2、设置、取得按下左右箭头滑动间隔:

int SetLineSize( int nSize );

int GetLineSize( ) const;

3、设置、取得按下PgUp、PgDown时滑动间隔:

int SetPageSize( int nSize );

int GetPageSize( ) const;

4、设置、取得滑块位置:

void SetPos( int nPos );

int GetPos( ) const;

5、设置滑动条刻度的频度:

void SetTicFreq( int nFreq );

实例:

在对话框中放一个Slider控件,添加相应的Ctrl型变量为m_slider。在对话框初始化函数OnInitDialog()中添加:

BOOL CDlgSetup::OnInitDialog()

{

CDialog::OnInitDialog();

// TODO: Add extra initialization here

m_slider.SetRang(0,100);//设置滑动范围

m_slider.SetTicFreq(10);//每10个单位画一刻度

return TRUE;  // return TRUE unless you set the focus to a control

// EXCEPTION: OCX Property Pages should return FALSE

}

Slider控件本身并没有响应滑动的消息函数,但可以通过主窗体的OnHScroll()响应。在类向导中为对话框添加WM_HSCROLL消息,在响应函数中添加:

void CDlgSetup::OnHScroll(UINT nSBCode, UINT nPos, CScrollBar* pScrollBar)

{

// TODO: Add your message handler code here and/or call default

CSliderCtrl   *pSlidCtrl=(CSliderCtrl*)GetDlgItem(IDC_SLIDER1);

m_int=pSlidCtrlHue->GetPos();//取得当前位置值

CDialog::OnHScroll(nSBCode, nPos, pScrollBar);

}

//m_int 即为当前滑块的值。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-25 02:22:33

MFC中SliderCtrl控件的使用的相关文章

MFC中Listbox控件的简单使用

MFC中listbox控件是为了显示一系列的文本,每个文本占一行.   Listbox控件可以设置属性为: LBS_CHILD   :(默认)子窗口 LBS_Visible :(默认)可视 LBS_Multiplesel :可选择多行 LBS_Extendedsel :可以使用shift或ctrl选择多行 LBS_SORT:所有行按字母顺序进行排序   对Listbox进行操作: Int listbox.AddString (  LPCTSTR     Str)   :对listbox的首行添加

MFC中按钮控件的用法笔记(转)

VC学习笔记1:按钮的使能与禁止 用ClassWizard的Member Variables为按钮定义变量,如:m_Button1:则m_Button1.EnableWindow(true); 使按钮处于允许状态m_Button1.EnableWindow(false); 使按钮被禁止,并变灰显示 VC学习笔记2:控件的隐藏与显示 用CWnd类的函数BOOL ShowWindow(int nCmdShow)可以隐藏或显示一个控件. 例1:CWnd *pWnd;pWnd = GetDlgItem(

在MFC中改变控件的TAB顺序

在MFC界面中,控件的TAB顺序如果乱了,不合理,可能会使界面出现意料之外的显示. 例如,在用Spin Control来对Edit Control内的值进行增减时,如果Edit Control.Spin Control及其它控件的TAB顺序不对,则可能使控件文本的显示不正确. Spin Control 的属性 Auto Buddy,与控件的TAB顺序有关.需确保Edit Control的TAB顺序比Spin Control的TAB顺序小一个值. 进入资源视图,打开对话框界面,用快捷键ctrl +

MFC中给控件添加变量,DoDataExchange中

DoDataExchange函数其实是一项数据动态绑定技术.比如你在写动态按钮过程中须对按钮添加变量时,怎么添加?控件类已经写好了,其变量是已经固定的.你要添加新的变量就要用到DoDataExchange函数. 你要在对话框的构造函数里面初始化一个变量,再用DoDataExchange函数将它绑定到你的动态按扭中,比如:DDX_Check(pDX, IDC_CHECK1, m_Lesson1);这就是将m_Lesson1(这是一个外部变量,其定义在对话框的构造函数里)绑定到IDC_CHECK1中

MFC中CListCtrl控件的使用方法

定义一个派生类CViewList 派生于CListCtrl 在要包含该控件的类(CView)中定义一个CViewList类型的变量 CViewList m_wndListView; 在CView响应的WM_CREATE消息中创建该对象,并设置相应的style,如下所示: CRect rectDummy; rectDummy.SetRectEmpty(); LONG lStyle = GetWindowLong(m_wndListView.m_hWnd,GWL_STYLE); lStyle &=

MFC中picture控件坐标转换

opencv在MFC框架下应用时,不可避免要用到picture控件显示图片,但picture控件显示图片的基本单位是屏幕坐标系,如果需要获取像素坐标系,只需要进行一步简单的转换即可.当然如果是opencv2.0及以上版本,则需要用到CvvImage这个类,网上可以下载到. 坐标转换的核心思想就是根据picture空间客户区域的大小以及需要显示的图片原来的实际大小之间的比例关系,做一步简单转换,具体代码如下: 1 /*获取客户区域坐标 2 */ 3 CRect rect_ctr; 4 (GetDl

MFC中listbox控件中各种属性的详解

 ListBox控件是Windows 窗体的一个空间,ListBox 控件显示一个项列表,用户可从中选择一项或多项.      如果项总数超出可以显示的项数,则自动向 ListBox 控件添加滚动条.当 MultiColumn 属性设置为 true 时,列表框以多列形式显示项,并且会出现一个水平滚动条.当 MultiColumn 属性设置为 false 时,列表框以单列形式显示项,并且会出现一个垂直滚动条.当 ScrollAlwaysVisible 设置为 true 时,无论项数多少都将显示滚动

MFC中改变控件的大小和位置(zz)

用CWnd类的函数MoveWindow()或SetWindowPos()可以改变控件的大小和位置. void MoveWindow(int x,int y,int nWidth,int nHeight); void MoveWindow(LPCRECT lpRect); 第一种用法需给出控件新的坐标和宽度.高度: 第二种用法给出存放位置的CRect对象: 例: CWnd *pWnd; pWnd = GetDlgItem( IDC_EDIT1 );    //获取控件指针,IDC_EDIT1为控件

MFC中改变控件字体

在对话框的初始化函数中添加下段代码 static CFont Sfont; static CFont Bfont; //CFont font;//不加static 貌似改变不了字体大小 Sfont.CreatePointFont(200,"隶书"); Bfont.CreatePointFont(150,"宋体"); GetDlgItem(IDC_STATIC)->SetFont(&Sfont); GetDlgItem(IDC_BUTTON1)->