在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 添加约束

    在表中添加约束,基本常用的有两种类型,一个是创建表时同时添加约束,另一个是创建好表通过修改表添加约束,在这里是创建表时同时添加约束,但是有两种不同的用写法. 在这里列举出一些创建约束的形式,共参考(均 ...

  2. 过滤ASCII码中的不可见字符, ASCII三部分, 各控制字符详解, 去^@,^M

    今天产品部同事报告了一个BUG,经过调试发现,由于用户输入的字符串中,包含字符0x1E, 也就是”记录分隔符”(Record Separator, Notepad++ 显示为[RS]),导致JavaS ...

  3. 【Shell脚本】运行shell脚本文件的几种方法与区别

    Shell脚本不同的运行方式会对当前Shell设置或者运行结果有所不同. 假设现在有一个脚本名为display_shell_script_args.sh,其内容如下: #!/home/pyf/bin/ ...

  4. PHP MySQL Delete From 之 Delete

    删除数据库中的数据 DELETE FROM 语句用于从数据库表中删除记录. 语法 DELETE FROM table_name WHERE column_name = some_value 注释:SQ ...

  5. 使用Comparable接口的小例子

    代码: public class Student implements Comparable<Student> { private int id; private String name; ...

  6. 解决struts2配置文件没有提示的问题

    1.在WEB-INF下新建一个dtd文件夹 2.将

  7. Android 一次退出所有activity的方法

    转自:http://bbs.51cto.com/thread-970933-1.html 因为android的API中没有提供一次性退出的接口所以想要在多activity的程序里面一次性退出的话就要费 ...

  8. GoEasy实现web实时推送过程中的自动补发功能

    熟悉GoEasy推送的朋友都知道GoEasy推送实现web实时推送并且能够非常准确稳定地将信息推送到客户端.在后台功能中查看接收信息详情时,可有谁注意到有时候在发送记录里有一个红色的R标志?R又代表的 ...

  9. MyEclipse开发的java web项目在 Eclipse中无法识别

    不能识别项目解决办法 在eclipse下,右键项目properties   ->  project fac e ts 选中 Dynamic web module 选择后面的版本为 2.5(运行环 ...

  10. STM32的例程GPIO的汇编指令初探

    任务一:寻找main函数的汇编指令集 任务二:寻找main函数中的SystemClock_Config函数的汇编指令集 寻找main函数的汇编指令集 运行例程中GPIO工程时,总会加载startup_ ...