[VC/MFC]滑动动条控件Slider的用法
来源:互联网 发布:淘宝 胖驴 编辑:程序博客网 时间:2024/04/30 07:09
在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()中添加:
Slider控件响应滑动的消息函数,方法一:可以通过主窗体的OnHScroll()响应。在类向导中为对话框添加WM_HSCROLL消息,在响应函数中添加:
本篇文章来源于 3SDN 转载请以链接形式注明出处 网址:http://www.3sdn.net/programing/vc/2008-12-01/107.html
方法二:响应SLIDER的 NM_RELEASEDCAPTURE事件,该事件是当用鼠标调整滑动条的位置,释放鼠标以后,滑动条会发送这个NM_RELEASEDCAPTURE消息
SLIDER默认没有MOUSEDOWN 等消息
解决办法一:自己重写一个SLIDER类,响应这些消息
解决办法二:在主窗口中 重载 预处理消息函数
PreTranslateMessage是消息在送给TranslateMessage函数之前被调用的,绝大多数本窗口的消息都要通过这里,比较常用,当你需要在MFC之前处理某些消息时,常常要在这里添加代码.
MFC消息控制流最具特色的地方是CWnd类的虚拟函数PreTranslateMessage(),通过重载这个函数,我们可以改变MFC的消息控制流程,甚至可以作一个全新的控制流出来。只有穿过消息队列的消息才受PreTranslateMessage()影响,采用SendMessage()或其他类似的方式向窗口直接发送的而不经过消息队列的消息根本不会理睬PreTranslateMessage()的存在。
一、是否调用TranslateMessage()和DispatchMessage()是由一个名称为PreTranslateMessage()函数的返回值决定的,如果该函数返回TRUE,则不会把该消息分发给窗口函数处理。
二、传给PreTranslateMessage()的消息是未经翻译过的消息,它没有经过TranslateMessage()处理。可以在该函数中使用(pMsg->wParam==VK_RETURN)来拦截回车键。
三、在WindowProc里不能处理WM_Char消息。
四、SetWindowText会发送WM_Char给窗口。
五、PeekMessage和GetMessage的区别:
GetMessage在没有消息的时候等待消息,cpu当然低 PeekMessage没有消息的时候立刻返回,可以在没有消息的时候可以做其他处理,但cpu占用率一般较高。 大多游戏都用PeekMessage();
- [VC/MFC]滑动动条控件Slider的用法
- [VC/MFC]滑动动条控件Slider的用法
- [VC/MFC]滑动动条控件Slider的用法
- [VC/MFC]滑动动条控件Slider的用法
- [VC/MFC]滑动动条控件Slider的用法
- MFC滑动动条控件Slider的用法
- MFC滑动动条控件Slider的用法
- VC 滑动动条控件Slider的用法
- 滑动动条控件Slider的用法
- VC/MFC 滑动条Slider的用法
- VC控件 滑动条Slider
- MFC中 滑动条控件 Slider Control 的添加
- vc中滑动控件slider的使用
- NGUI控件---Slider滑动条
- VC slider滑度条控件用法
- VC slider滑度条控件用法
- 监听滑动条控件Slider值改变
- c++ATL 滑动条控件Slider CTrackBarCtrl
- video4linux(v4l)使用摄像头的实例基础教程与体会
- 一道有道编程题
- ajax 发送xml文件,java接受xml文件并解析
- 分治算法
- Spring编程式事务
- [VC/MFC]滑动动条控件Slider的用法
- 页面编码与调用的js文件编码不同导致乱码的处理
- Eclipse常用插件列表
- 什么叫帅?
- 佛家经典语录
- Linux_shell_文件名置换
- pku 2704 Pascal's Travels
- 详解AJAX核心中的XMLHttpRequest对象
- How To Cross Compile Python 2.5.2 For ARM -- by Border