在MFC中有多种获取控件数据的方法

1.GetWindowText()和SetWindowText()函数

  ],ch2[],ch3[];
 GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,);
 GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,);
 num1 = atoi(ch1);
 num2 = atoi(ch2);
 num3 = num1+num2;
 itoa(num3,ch3,);
 GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);

2.GetDlgItemText()和GetDlgItemText()函数

 GetDlgItemText(IDC_EDIT1,ch1,);
 GetDlgItemText(IDC_EDIT2,ch2,);
 num1 = atoi(ch1);
 num2 = atoi(ch2);
 num3 = num1+num2;
 itoa(num3,ch3,);
 SetDlgItemText(IDC_EDIT3,ch3);

3.将对话框中的类中添加新的数据成员,是新的数据成员通过DDX和DDV和控件联系起来。

操作步骤如下:

(1)查看- 类编辑向导-Member Variables 中添加类成员变量和控件相关连,并填写好变量的取值范围。

 UpdateData();
 m_num3 = m_num1+m_num2;
 UpdateData(FALSE);

4.添加控件和控件之间的关联,操作步骤和3类似,不同的地方在于添加的数据成员变量类型是控件

 m_Edit1.GetWindowText(ch1,);
 m_Edit2.GetWindowText(ch2,);
 num1=atoi(ch1);
 num2=atoi(ch2);
 num3=num1+num2;
 itoa(num3,ch3,);
 m_Edit3.SetWindowText(ch3);

5.调用SendMessage函数

,(LPARAM)ch1);
,(LPARAM)ch1);
,(LPARAM)ch1);
,(LPARAM)ch1);
,(LPARAM)ch2);    
);    
 m_Edit3.SendMessage(WM_SETTEXT,,(LPARAM)ch3);

6.调用SendDlgItemMessage函数

],ch2[],ch3[];
,(LPARAM)ch1);
,(LPARAM)ch2);
 itoa(num3,ch3,);
 
 SendDlgItemMessage(IDC_EDIT3,WM_SETTEXT,,(LPARAM)ch3);
 SendDlgItemMessage(IDC_EDIT3,EM_SETSEL,,-);
 m_Edit3.SetFocus();

7.调用函数GetDlgItemInt()

num1 = GetDlgItemInt(IDC_EDIT1);
num2 = GetDlgItemInt(IDC_EDIT2);
num3 = num1+num2;
SetDlgItemInt(IDC_EDIT3,num3);
//SetDlgItemText(IDC_EDIT3,itoa(num3,ch3,10));

MFC 操作控件数据的更多相关文章

  1. WinForm中新开一个线程操作 窗体上的控件(跨线程操作控件)

    最近在做一个winform的小软件(抢票的...).登录窗体要从远程web页面获取一些数据,为了不阻塞登录窗体的显示,开了一个线程去加载数据远程的数据,会报一个错误"线程间操作无效: 从不是 ...

  2. 如何将 MFC ActiveX 控件标记为安全,脚本和初始化

    MSDN原文.ActiveX控件标记安全(可以不仅仅是MFC ActiveX) 概要 默认情况下,MFC ActiveX 控件未标记为对脚本编写是安全的和对初始化是安全的.控制运行在 Internet ...

  3. 开发ActiveX控件调用另一个ActiveX系列1——开发一个MFC ActiveX控件

    ActiveX开发的教程有很多,我也从中受益匪浅,例如以下这几篇: 基本教程:http://www.cnblogs.com/guenli/articles/1629915.html 注意事项:http ...

  4. winform 跨线程操作控件

    当进行winform的开发时,经常遇到用时比较久的操作,在传统的单线程程序中,用户必须等待这个耗时操作完成以后才能进行下一步的操作,这个时候,多线程编程就派上用场了,将这个耗时的操作放到一个新的子线程 ...

  5. Android判断Touch为滑动事件还是操作控件

    Android判断Touch为滑动事件还是操作控件 因为在项目中要判断WebView是否处于滚动状态,但它不像ListView有onScrollStateChanged方法来监听,要实现就得手动监听它 ...

  6. WinForm中跨线程操作控件

    在WinForm编程时会遇到通过后台线程操作界面的情况,直接在后台线程执行的方法中直接操作控件会报错,这时候就要使用跨线程方式间接操作控件.下面是两种实现方式.   1.采用定义delegate的方式 ...

  7. jQuery操作控件

    在项目中添加前台控件radio,操作两个div的显示和隐藏,其实是一个很简单的问题,但是费了老大劲才完成,也就是jQuery操作控件的一些基础知识.方法有三种,简单介绍: 1.给元素设置style属性 ...

  8. C# 跨线程操作控件(简洁)

                                              C# 跨线程操作控件 .net 原则上禁止跨线程访问控件,因为这样可能造成错误的发生.解决此问题的方法有两个: 第一 ...

  9. VC线程中操作控件,引起程序卡死的问题。

    [问题还原] 线程中操作控件,具体为控制一个按键的使能,使能后结束线程. 主程序中有一个死循环,等待线程结束. 然后,就没有然后了-- [解决方案] 在主程序死循环中,如果检测到界面消息,优先处理掉.

随机推荐

  1. SQL查询 addScalar()或addEntity()

    Hibernate除了支持HQL查询外,还支持原生SQL查询.   对原生SQL查询执行的控制是通过SQLQuery接口进行的,通过执行Session.createSQLQuery()获取这个接口.该 ...

  2. HTML条件注释用法诠释

    HTML条件注释用法诠释 注释内容以样式为例,如下: 1.支持所有IE浏览器 <!--[if IE]> <link rel="stylesheet" href=& ...

  3. jQuery之事件

    (一).事件列表. 1.blur() 当失去焦点时触发.包括鼠标点击离开和TAB键离开. 2.change() 当元素获取焦点后,值改变失去焦点事触发. 3.click() 当鼠标单击时触发. 4.d ...

  4. Silverlight 结合ArcGis 使用inforwindow

    原文 http://www.dotblogs.com.tw/justforgood/archive/2012/05/10/72089.aspx 也许有些人不知道什么事inforwindow,简单来说就 ...

  5. JSON数据解析——jsoncpp的使用

    版权所有,转载请注明:http://blog.sina.com.cn/u/1978765352 由于工作中需要用到JSON数据,所以解析JSON数据就成了一个非常重要的工作内容. 其实用C++解析数据 ...

  6. linux查看CPU高速缓存(cache)信息

    一.Linux下查看CPU Cache级数,每级大小 dmesg | grep cache 实例结果如下: 二.查看Cache的关联方式 在 /sys/devices/system/cpu/中查看相应 ...

  7. 【转】android电池(五):电池 充电IC(PM2301)驱动分析篇

    关键词:android 电池  电量计  PL2301任务初始化宏 power_supply 中断线程化 平台信息:内核:linux2.6/linux3.0系统:android/android4.0  ...

  8. 【sql语句】好用的sql语句之项目数据库学习总结

    转载请注明出处:http://blog.csdn.net/pearyangyang/article/details/41115491 这几天学习公司系统的数据流向.主要涉及到几个表的数据. 可是表中的 ...

  9. Android - 使用Intent来启动Activity

    本文地址: http://blog.csdn.net/caroline_wendy/article/details/21455141 Intent 的用途是 绑定 应用程序组件, 并在应用程序之间进行 ...

  10. 理解会话中的Cookie和Session对象

    会话可以简单理解为:用户打开一个浏览器,点击多个超链接,访问服务器多个web资源,然后关闭浏览器,整个过程称之为一个会话. 在java语言中,Servlet程序是由WEB服务器调用,web服务器收到客 ...