MFC:关于常用控件的一些处理函数[持续更新中]

本文档详细记录了MFC项目中遇到的控件处理问题,包括控件值更新、CComboBox显示问题及数据有效验证机制DDV的提示方法。针对CComboBox无法显示下拉内容,解决方案是在创建控件时扩大高度。此外,通过重写DDV_MinMaxInt函数,可以自定义超出范围时的提示内容。务必避免直接调用DDX_Text和DDV_MinMaxInt,应将其置于特定函数内以便自动执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

记录一下项目当中用到的部分控件的常用函数,以及一些自写的处理函数

1. 控件值更新

  • UpdateData(FALSE);//将程序中的变量中的值更新到空间中去
  • UpdateData(TRUE);//将控件中输入的值更新到程序中的变量中

2. MFC的CcomboBox无法显示下拉内容

神一样的问题,下拉框无法显示,解决方法:在拖这个控件的时候,把框框上下一定要拉大!每次找好久才能找到上下拉的光标。字符集才会有这个问题,在Unicode工程下 是不需要这样操作的。
在这里插入图片描述

3.MFC数据有效机制DDV——提示方法

MFC提供了类CDataExchage 来实现对话框类与控件交换(DDX),该类还提供了数据有效机制(DDV),可以查看MFC对该机制的定义
在此,以DDV_MinMaxInt;函数为例,讨论一下提示的问题:

DDX_Text(pDX, IDC_EDIT1, m_test);
DDV_MinMaxInt(pDX, m_test, 1, 100000);

上述函数可以设置变量m_test的最大值和最小值,如果对应的控件输入超过这个范围,会弹出MFC的提示。如果想要修改这个默认的提示,让提示框输出自己想要的内容,需要在DDV_MinMaxInt函数的基础上重写:
自写对话框类h文件里函数的声明

class CModBus485Master
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值