MFC---对话框(一)对话框文本的获取和设置
来源:互联网 发布:centos 安装ant 编辑:程序博客网 时间:2024/05/01 22:06
我们使用的编译环境是VC++6.0。首先,在MFC Wizard(exe)下建立基于对话框的工程,取名为Mybole。
在对话框上放置三个静态文本框, 三个编辑框。如图:
现在实现一个简单的功能:即在Number1, 和Number2中输入数字,点击Add按钮,将两个数相加的结果显示在Number3中。
在Add按钮的消息相应函数OnBtnAdd()中添加一下代码,可实现两个数的相加,体会获取和设置控件文本的方法:
方法一:利用CDialog 的成员函数GetDlgItem(), GetWindowText()和SetWindowText();
int num1, num2, num3;char ch1[10], ch2[10], ch3[10];GetDlgItem(IDC_EDIT1)->GetWindowText(ch1, 10);//获取文本信息GetDlgItem(IDC_EDIT2)->GetWindowText(ch2, 10);num1 = atoi(ch1);//字符转换为数字num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);GetDlgItem(IDC_EDIT3)->SetWindowText(ch3);//获取窗口指针, 设置窗口(控件)文本*/
方法二:利用GetDlgItemText()和SetDlgItemText();
int num1, num2, num3;char ch1[10], ch2[10], ch3[10];GetDlgItemText(IDC_EDIT1, ch1, 10);//GetDlgItemText = GetDlgItem + GetWindowTextGetDlgItemText(IDC_EDIT2, ch2, 10);num1 = atoi(ch1);//字符转换为数字num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);SetDlgItemText(IDC_EDIT3, ch3);//SetDlgItemText = GetDlgItem + SetWindowText*/
方法三:利用GetDlgItemInt(), 和SetDlgItemInt();
int num1, num2, num3;num1 = GetDlgItemInt(IDC_EDIT1);//获取控件文本, 做整数返回num1 = GetDlgItemInt(IDC_EDIT2);num3 = num1 + num2;SetDlgItemInt(IDC_EDIT3, num3);
方法四:在类向导中分别为三个编辑框设置int型成员变量,m_num1, m_num2, m_num3;
UpdateData();//将值从控件传到成员变量m_num3 = m_num1 + m_num2;UpdateData(FALSE);//将值从成员变量传给控件
方法五:在类向导中分别为三个编辑框设置control型成员变量,m_edit1, m_edit2, m_edit3; 利用CEdit类的成员函数
int num1, num2, num3;char ch1[10], ch2[10], ch3[10];m_edit1.GetWindowText(ch1, 10);//CEdit 的成员函数, 获取文本信息m_edit2.GetWindowText(ch2, 10);num1 = atoi(ch1);//字符转换为数字num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);m_edit3.SetWindowText(ch3);方法六:利用Windows API, 发送信息给操作系统,实现对控件内容修改
int num1, num2, num3;char ch1[10], ch2[10], ch3[10];//发送信息的三种方式::SendMessage(GetDlgItem(IDC_EDIT1)->m_hWnd, WM_GETTEXT, 10, (LPARAM)ch1);::SendMessage(m_edit2.m_hWnd, WM_GETTEXT, 10, (LPARAM)ch2);num1 = atoi(ch1);//字符转换为数字num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);m_edit3.SendMessage(WM_SETTEXT, 0, (LPARAM)ch3);方法七:利用Windows API, 发送信息给操作控件,实现对控件内容修改
int num1, num2, num3;char ch1[10], ch2[10], ch3[10];SendDlgItemMessage(IDC_EDIT1, WM_GETTEXT, 10, (LPARAM)ch1);SendDlgItemMessage(IDC_EDIT2, WM_GETTEXT, 10, (LPARAM)ch2);num1 = atoi(ch1);//字符转换为数字num2 = atoi(ch2);num3 = num1 + num2;itoa(num3, ch3, 10);SendDlgItemMessage(IDC_EDIT3, WM_SETTEXT, 10, (LPARAM)ch3);
通过以上七种方法的学习,可以体会到获取控件文本的方法,从多个方向学习Windows API 以及MFC类库。也可以由上述方法拓展,上手其他空间,做到触类旁通。
- MFC---对话框(一)对话框文本的获取和设置
- Android对话框的高级设置《一》设置对话框按钮的图像和在内容文本中插入图像
- Android对话框的高级设置《一》设置对话框按钮的图像和在内容文本中插入图像
- MFC对话框静态文本颜色设置
- MFC设置对话框的焦点
- MFC设置对话框的焦点
- MFC-对话框背景图片的设置
- MFC对话框背景图片的设置
- MFC 对话框 文本操作
- MFC设置对话框、字体对话框、颜色对话框
- MFC设置对话框、字体对话框、颜色对话框
- MFC对话框杂记(一)
- VC++ 设置对话框的背景颜色和静态文本颜色
- VC++ 设置对话框的背景颜色和静态文本颜色
- MFC如何设置对话框的背景和字体颜色
- MFC 设置弹出对话框的位置、大小和风格 SetWindowPos
- MFC如何设置对话框的背景和字体颜色
- mfc之设置标题和对话框大小
- Qt 之路 (07)—对话框(上)
- 字符编码方式 ANSI、UNICODE、UTF-8、GB2312、GBK、DBCS、UCS
- 微软HTML5,JavaScript和CSS3考试通过后的一点经验分享
- HDOJ---ACMSteps---1.3.8Crixalis's Equipment
- 【Cocos2d-x游戏引擎开发笔记(7)】定时器
- MFC---对话框(一)对话框文本的获取和设置
- 并行
- 初学JAVA心得---动机和行为
- 【程序4】填数游戏
- 做一个VB记事本的感想和遗留下的问题
- PermGen space错误解决办法
- android手机定位显示信息
- ubuntu下关于python的东东
- linux .so动态库makefile的嵌套调用