基于对话框的编程之编辑框的使用

一、效果图

说明:按copy键可将左上对话框的对话框的内容复制到下面的对话框,按close键退出当前对话框,按设置内容,可将右上角对话框内容设置为呵呵,按获取内容可获取右上角对话框的内容

二、具体步骤

1、新建一个MFC应用程序,命名为03 EditCtrl,应用程序类型选择基于对话框,其他默认设置

2、按ctrl+A,然后按Delete键,清除对话框内的初始内容,并新增一个编辑框

编辑框初始时不支持多行编辑与回车换行,可在右键属性中修改

初始时垂直方向不支持无限输入,也可在属性中修改

添加水平和垂直方向的滚动条

效果如下

3、复制一个编辑框(按ctrl键拖动编辑框),新增两个按钮,如下

 4、为第一个编辑框添加变量,设置访问权限和变量名(m_edit1)

5、为copy按钮添加点击事件

void CMy03EditCtrlDlg::OnBnClickedButton2()
{
    // TODO: Add your control notification handler code here
    //获取edit1的内容,然后给edit2赋值
    CString str;
    m_edit1.GetWindowTextW(str);
    m_edit2.SetWindowTextW(str);
}

6、为close按钮添加点击事件

void CMy03EditCtrlDlg::OnBnClickedButton3()
{
    // TODO: Add your control notification handler code here

    //exit(0);//退出程序

    //退出当前的对话框
    //CDialogEx::OnOK();
    CDialogEx::OnCancel();
}

7、修改默认生成的编辑框按回车退出的bug

 在类视图下,找到DIg类右键属性,重写OnOK事件,注释掉里面的代码

8、新建一个编辑框,两个按钮,效果如下

9、为新建的编辑框添加变量,修改访问权限和类别(进行值绑定),填写变量名称

10、对第一个按钮添加点击事件,设置UpdateData为FALSE,可将变量内容同步到控件中

void CMy03EditCtrlDlg::OnBnClickedButton5()
{
    // TODO: Add your control notification handler code here
    //利用关联value的方式,设置和改变edit的内容

    //设置内容
    m_text = TEXT("哈哈");

    //将变量内容同步到控件中
    UpdateData(FALSE);
}

11、对第二个按钮添加点击事件,设置UpdateData为TRUE,可将控件内容同步到变量

void CMy03EditCtrlDlg::OnBnClickedButton4()
{
    // TODO: Add your control notification handler code here

    //获取内容
    //将控件的内容同步到变量中
    UpdateData(TRUE);

    MessageBox(m_text);
}
原文地址:https://www.cnblogs.com/yanchaoyi/p/12660206.html