对话框slider与EditBox关联

本文介绍如何在VC++6.0中实现滑动条与文本框的联动功能,包括创建对话框工程、放置控件、定义变量、设置滑动条范围及刻度值、编写事件处理代码等步骤。

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

1)在VC++ 6.0中新建一个对话框文档的工程。

  (2)打开资源管理器,在对话框中放置一个EDIT控件(IDC_YUZHI),设置关联变量m_yuzhi;然后在它旁边放上一个Slider控件,基本的框架已经完成了。

  (3)对Slider控件右击,选择“建立类向导”,对刚才的Slider控件定义一个变量Slider1,类型为CSliderCtrl。再关联一个int型的变量m_shuzhi

(4)在对话框初始化的代码,后添加相应的属性。

BOOL Dialog::OnInitDialog()
{
 CDialog::OnInitDialog();
 Slider1.SetRange(0,255);//设置范围
Slider1.SetTicFreq(1);//设置刻度值

}

(5)现在我们加入事件过程代码。

  选择Slider的“事件”然后选择第一个过程(NM_CUSTOMDRAW)随后加入以下代码:

oid Dialog::OnCustomdrawSlider1(NMHDR* pNMHDR, LRESULT* pResult)
{
UpdateData(TRUE);//将控件值赋给控件变量
m_yuzhi=Slider1.GetPos();//加一个文本框,用于显示,将滑块的数值赋给 文本框变量
UpdateData(FALSE); //将文本框变量赋给 文本框;即变量值赋给控件

 *pResult = 0;
}

(6)在CDialog类中添加文本框的EN_CHANGE消息响应函数

void Dialog::OnChangeYuzhi()
{
  UpdateData();//将控件(此处为文本框)的值赋给控件变量,此处用于感知文本框的输入
 m_shuzhi= GetDlgItemInt(IDC_YUZHI, NULL, TRUE);//获得文本框数值
 //m_shuzhi=m_yuzhi;//这句 也可以
 UpdateData(FALSE) ;//将滑块变量值 赋给滑块

}

 

 

 

函数说明  UpdateData() 是MFC的窗口函数,用来刷新数据的。

函数使用

  UpdateData()参数只有一个,默认为TRUE。

  UpdateData(TRUE)

  ——刷新控件的值到对应的变量。(外部输入值交给内部变量)

  即:控件的值—>变量。

  UpdateData(FALSE)

  —— 拷贝变量值到控件显示。(变量的最终运算结果值交给外部输出显示)

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ANTRK

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值