[VC/MFC]滑动动条控件Slider的用法

在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 即为当前滑块的值。
 

 
本篇文章来源于 3SDN  转载请以链接形式注明出处 网址:http://www.3sdn.net/programing/vc/2008-12-01/107.html

时间: 2024-08-24 00:40:00

[VC/MFC]滑动动条控件Slider的用法的相关文章

vc++-MFC如何设置IP控件背景色

问题描述 MFC如何设置IP控件背景色 在VC++创建的MFC应用程序中,通过OnCtlColor可以改变EDIT等控件背景色,但IP控件就不行,网上说重载IP控件,但不知道怎么弄,求大神帮忙 解决方案 不是重载,而是子类化以后重绘. 解决方案二: 可以直接下载别人写好的IP控件,就是CPP.h文件..加载进来.代码生成就OK~.不过,IP控件不是一般那颜色么? 解决方案三: 一样的方式重载ip控件的onctlcolor 解决方案四: 重写CIPAddressCtrl类,在OnPaint中自绘试

vc++-MFC里如何判断控件失去了焦点

问题描述 MFC里如何判断控件失去了焦点 我想在一个编辑框失去焦点时判断输入的是否正确,请问该如何判断失去了焦点? 解决方案 不需要自己写,直接用ddv/ddxhttp://blog.csdn.net/laogaoav/article/details/20764231http://blog.sina.com.cn/s/blog_6c8fad9f01011yxg.htmlhttp://blog.csdn.net/zhangyang0402/article/details/3948144 解决方案二

VC 透明滑动控件Slider Control

操作系统:Windows 7软件环境:Visual C++ 2008 SP1本次目的:为滑动控件设置背景透明       经常在编写有背景的程序时,滑动控件Slider Control看起来与背景十分不合,我们可以从CSliderCtrl派生自己的类出来,以实现这个功能.下面是效果图: 所参考的资料来自:http://dev.yesky.com/179/2284679.shtml 派生类下载:http://download.csdn.net/source/1851812   使用时,添加滑动控件

never sliderbar(js版简单的滑动条控件)

js|控件 web滑动条,web滚动条,js滚动条,滑动条控件,js Sliderbar 已经再次更新:支持实时监控sliderbar的数据,允许有callback回调的函数,有示例,持续更新中......   1.可自定样式SetStyle() 2.带有onSroll功能 3.有setSldPoint(设置位置)接口 4.有getSldPoint(取得位置)接口 5.可自己设置sliderBar的最大值(不是sliderbar的长度,而是值) 6.自定义微调功能(setIncrement(10

MFC中动态创建控件以及事件响应实现方法_C 语言

本文实例讲述了MFC中动态创建控件以及事件响应实现方法,分享给大家供大家参考.具体实现方法如下: 动态控件是指在需要时由Create()创建的控件,这与预先在对话框中放置的控件是不同的. 一.创建动态控件: 为了对照,我们先来看一下静态控件的创建. 放置静态控件时必须先建立一个容器,一般是对话框,这时我们在对话框编辑窗口中,从工具窗口中拖出所需控件放在对话框中即可,再适当修改控件ID,设置控件属性,一个静态控件就创建好了,当对话框被显示时,其上的控件也会显示. 静态控件不需要调用Create()

孙鑫VC学习笔记:ActiveX 控件 .

孙鑫VC学习笔记:ActiveX 控件 作者:华仔 | 录入时间:2007-12-26 | 点击:313 次    打印此文章 | 字体:大 中 小 基本概念: 容器和服务器程序       容器应用程序时可以嵌入或链接对象的应用程序.Word 就是容器应用程序.服务器应用程序是创建对象并且当对象被双击时,可以被启动的应用程序.Excel 就是服务器应用程序.ActiveX 控件不能独立运行,它必须被嵌入容器应用程序中,和容器应用程序一起运行. -------------------------

MFC如何改变图片控件大小?

问题描述 MFC如何改变图片控件大小? 如图,我想改变图片控件大小到方框那么大,好让图片适应控件显示,不知道怎么样才能做到?谢谢(很奇怪为什么不能拖动改变大小) 解决方案 你放的是什么控件,试试看picturebox或者static.另外你当前选定的是那个按钮,你先要选择图片控件,让它四周出现8个小方块 解决方案二: MFC的控件大小如何随对话框改变MFC控件大小随窗体大小而改变MFC控件大小随窗体大小而改变 解决方案三: 你VC的资源管理器中选中图片控件,然后拖动它的边框到对应的大小 或者你用

c++-vc中程序调用ntgraph控件

问题描述 vc中程序调用ntgraph控件 程序调用控件,程序已经写好,利用ntgraph控件来画图,凑足30字. 解决方案 你先试试看,如果不行我给你完整的项目. 解决方案二: // gtDlg.cpp : implementation file // #include "stdafx.h" #include "gt.h" #include "gtDlg.h" #include<iostream> #include<fstre

MFC的picture control控件显示问题

问题描述 MFC的picture control控件显示问题 cvNamedWindow("人脸检测", CV_WINDOW_AUTOSIZE); cvShowImage("人脸检测", ipl); ShowImage(ipl, IDC_STATIC); 用cvShowImage显示可以正常显示,用ShowImage就弹出上方错误: ShowImage函数用的是http://blog.sina.com.cn/s/blog_7880f98301017l6f.html