MFC_对话框_访问控件_7种方法_A
访问对话框控件的七种方法
方法一、
GetDlgItem()->GetWindowText();
GetDlgItem()->SetWindowText();
方法二、
GetDlgItemText();
SetDlgItemText();
方法三、
GetDlgItemInt();
SetDlgItemInt();
一、建立名为Demo的MFC工程,并按照如图添加控件,修改第一个static text Caption属性为+,第二个static text Caption属性为-,
分别修改三个button 的Caption属性为Add,

方法一:
双击第一个Add button,进入DemoDlg.cpp添加,
void CDemo1Dlg::OnBnClickedButton1()
{
int num1,num2,num3;
TCHAR ch1[],ch2[],ch3[]; //定义三个字符数组用来保存输入输出数据
GetDlgItem(IDC_EDIT1)->GetWindowText(ch1,); //获取文本输入,并保存到数组中
GetDlgItem(IDC_EDIT2)->GetWindowText(ch2,); num1=_ttoi(ch1); //将字符串转变为整数用于计算
num2=_ttoi(ch2); num3 = num1 + num2; //计算 _itot(num3,ch3,); //将整数转变为字符串用于显示
GetDlgItem(IDC_EDIT3)->SetWindowText(ch3); //显示结果
}
方法二:
双击第二个Add button,进入DemoDlg.cpp添加,
void CDemo1Dlg::OnBnClickedButton2()
{ int num1,num2,num3;
TCHAR ch1[],ch2[],ch3[];
GetDlgItemText(IDC_EDIT1,ch1,);
GetDlgItemText(IDC_EDIT2,ch1,); num1=_ttoi(ch1);
num2=_ttoi(ch2); num3 = num1 + num2; _itot(num3,ch3,);
SetDlgItemText(IDC_EDIT3,ch3);
}
方法三:
双击第三个Add button,进入DemoDlg.cpp添加,
方法三
void CDemo1Dlg::OnBnClickedButton3()
{ int num1,num2,num3;
num1=GetDlgItemInt(IDC_EDIT1);
num2=GetDlgItemInt(IDC_EDIT2); num3 = num1 + num2; SetDlgItemInt(IDC_EDIT3,num3);
}
MFC_对话框_访问控件_7种方法_A的更多相关文章
- MFC控件编程之 按钮编辑框.静态文本的使用,以及访问控件的七种方法.
MFC控件编程之 按钮编辑框.静态文本的使用以及访问控件的七种方法. 一丶按钮.静态文本的通用属性. 他们都有一个属性.就是可以输入标题内容.以及可以自定义控件ID. 创建一个MFC Dlg对话框. ...
- C#中跨线程访问控件问题解决方案
net 原则上禁止跨线程访问控件,因为这样可能造成错误的发生,推荐的解决方法是采用代理,用代理方法来间接操作不是同一线程创建的控件. 第二种方法是禁止编译器对跨线程访问作检查,可以实现访问,但是出不出 ...
- c#使用MethodInvoker解决跨线程访问控件
功能函数测试集锦(77) C#专区(114) 版权声明:本文为博主原创文章,未经博主允许不得转载. .net 原则上禁止跨线程访问控件,因为这样可能造成错误的发生,有一种方法是禁止编译器对跨线 ...
- c# winform InvokeRequired 解决跨线程访问控件
C#中禁止跨线程直接访问控件,InvokeRequired是为了解决这个问题而产生的,当一个控件的InvokeRequired属性值为真时,说明有一个创建它以外的线程想访问它. Windows 窗体中 ...
- winform跨线程访问控件
首先说下,.net 2.0以后加强了安全机制,不允许在winform中直接跨线程访问控件的属性.所以除了控件所在的线程外的线程调用会抛异常 (Cross-thread operation not va ...
- C# 关于跨线程访问控件问题
跨线程访问控件问题的原因是:控件都是在主线程中创建的,而系统默认控件的修改权归其创建线程所有.在子线程中如果需要直接修改控件的内容,需要使用委托机制将控件的修改操作交给主线程处理.因此,当没有使用委托 ...
- C#中跨线程访问控件
net 原则上禁止跨线程访问控件,因为这样可能造成错误的发生,推荐的解决方法是采用代理,用代理方法来间接操作不是同一线程创建的控件. 第二种方法是禁止编译器对跨线程访问作检查,可以实现访问,但是出不出 ...
- C#线程中安全访问控件(重用委托,避免繁复的delegate,Invoke)总结
1.第一种,不安全,当线程过多后,timer控件和线程中同时访问窗体控件时,有时会出现界面重绘出错. public frmMain() { InitializeComponent(); System. ...
- [C#] Control.Invoke方法和跨线程访问控件(转载)
转载前,在网上找了好多INVOKE方法的文章,就这个看着还可以,明白了大概,以后再深用的时候再研究 ,废话少说上转载(连转载都说的这么有气势,哈哈) 在设计界面时,我们经常需要将一些需要时间才能完 ...
随机推荐
- 2019-6-23-WPF-网络-request-的-read-方法不会返回
title author date CreateTime categories WPF 网络 request 的 read 方法不会返回 lindexi 2019-06-23 11:26:26 +08 ...
- SDUT-3362_村村通公路
数据结构实验之图论六:村村通公路 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 当前农村公路建设正如火如荼的展开,某乡 ...
- Launch configuration JUnitCore references non-existing project XXX.
- Flask学习之七 单元测试
英文博客地址:http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-vii-unit-testing 中文翻译地址:http ...
- Hbase API: 读Bigtable
- python基础之逻辑题(3)
Python基础之逻辑题(3) 1.编写一个函数实现将IP地址转换成一个整数 2.求结果:---lambda 3.求a的结果 4.求下面nums的输出 5.求下面片段的输出 6.写出程序的结果:--- ...
- H3C 命令行历史记录功能
- Python type hints 之 Optional,Union
1,前言 type hint 在pep484加入,我个人觉得这种类似于类型约束的(机制)有点违背了python简单.简洁的初衷,在慢慢向c# java 这种强类型语言看齐的节奏. 不过好在不强制使用, ...
- hdu 1708 Fibonacci String
Fibonacci String Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- 条件随机场(CRF) - 2 - 定义和形式
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/xueyingxue001/article/details/51498968声明: 1,本篇为个人对& ...