
MFC对话框控件的属性、方法、消息
发布日期:2021-05-10 02:21:55
浏览次数:21
分类:精选文章
本文共 1355 字,大约阅读时间需要 4 分钟。
静态控件(Static Control)
属性:
- Align text:横向对齐方式,可选左对齐、中对齐、右对齐,默认为左对齐
- Center vertically:将文本垂直居中,布尔型,默认为假
- Notify:控件被单击时是否通过父窗口,布尔型,默认为假
- Sunken:使控件看上凹的感觉,布尔型,默认为假
- Border:设置边框,布尔型,默认为假
常用方法:
- SetBitmap:指定在静态控件中显示的位图
- GetBitmap:获取用SetBitmap设置的位图的句柄
- SetIcon:指定在静态控件中要显示的图标资源
- GetIcon:获取用SetIcon设置的图标的句柄
- GetRect:获取编辑框控件的矩形
编辑框(Edit Control)
属性:
- Align text:左对齐、右对齐或居中对齐,默认为左对齐
- Multiline:编辑框是否多行
- Number:只允许输入数字
- Auto HScroll:输入到窗口右边界后自动产生横向滚动条
- Password:设置后输入内容显示为星号
- Want return:在多行编辑框中按Enter时插入回车符,默认行为
- Read-only:只读状态
- Uppercase:输入字符转换为大写
方法:
- GetSel:获取编辑框中当前选择的字符范围
- ReplaceText:用指定文本替换编辑框内容
- SetSel:选择编辑框中的字符范围
- GetModify:确定编辑框内容是否被修改
- SetModify:设置或清除编辑框的修改标志
- SetReadOnly:设置只读属性
- GetPasswordChar:获取输入时显示的口令字符
- LimitText:限制输入文本长度
- Copy:将选中内容复制到剪贴板
- Paste:从剪贴板粘贴到光标位置
- GetLineCount:获取多行编辑框的行数
- GetLine:获取某一行文本
滚动条(ScrollBar Control)
属性:
- 滚动范围(最小值和最大值)
- 垂直或水平滚动方向
方法:
- SetScrollRange:设置滚动范围
- GetScrollRange:获取滚动范围
- SetScrollPos:将滚动块移动到指定位置
- GetScrollPos:获取滚动块当前位置
消息处理:
- WM_HSCROLL和WM_VSCROLL消息
- 重载这些消息处理函数可自定义滚动行为
- 常见消息代码:SB_THUMBPOSITION、SB_THUMBTRACK、SB_LINEUP、SBLINEDOWN、SB_PAGEDOWN、SB_PAGEUP、SB_ENDSCROLL等
实例: 创建对话框后添加三个滚动条,设置RGB值并使用OnHScroll消息响应函数实现 滚动条控制
进度条(Progress bar Control)
属性:
- Smooth:使用不间断的蓝色条填充
方法:
- SetRange:设置进度条范围
- GetRange:获取进度条范围
- SetPos:设置当前位置
- GetPos:获取当前位置
- SetStep:设置步长
- StepIt:进度条增加指定步长
消息处理: 通过StepIt方法控制进度条变化
应用示例: 创建播放器对话框,实时更新进度条 使用微调控件和滑块控件 添加消息处理函数(如UDN_DELTAPOS)实现播放控制
发表评论
最新留言
路过按个爪印,很不错,赞一个!
[***.219.124.196]2025年04月03日 18时08分21秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
简单实用算法——字节位序反转
2019-03-06
webpack之带有可自动打开浏览器及热重载的基本配置
2019-03-06
前端的批量接口如何快速响应?有没有通用解决方案?
2019-03-06
Shader 入门笔记(一) 如何学习shader
2019-03-06
Huffman树及其编解码
2019-03-06
分布式、高并发、高性能场景(抢购、秒杀、抢票、限时竞答)数据一致性解决方案
2019-03-06
淘宝镜像
2019-03-06
20.波利亚过程
2019-03-06
04_Mysql配置文件(重要参数)
2019-03-06
浅谈使用git进行版本控制
2019-03-06
python 序列化及其相关模块(json,pickle,shelve,xml)详解
2019-03-06
深入学习Tesseract-ocr识别中文并训练字库的方法
2019-03-06
js编写动态时钟
2019-03-06
JavaSE总结
2019-03-06
Consul安装使用
2019-03-06
手动造轮子——基于.NetCore的RPC框架DotNetCoreRpc
2019-03-06
Python IO编程
2019-03-06
CSS入门总结
2019-03-06