我刚学vc编程,我参照书,建立一个dialog在里边添加一个edit box然后还有一个button我想点击button时,这个editbox里边显示"hello"我用classwizard给这个dialog添加了相关的类,然后给button添加的响应的函数bn_clicked
给那个edit box设置了响应了变量,t1,类型为cstring然后编辑代码为
void CMy22Dlg::OnOK() 
{
// TODO: Add extra validation here
t1="Hello!";
CDialog::OnOK();
}
但是运行点确定,窗口就关闭了。为什么?怎样才能达到我的想法呢?

解决方案 »

  1.   

    void CMy22Dlg::OnOK() 
    {
    // TODO: Add extra validation here
    t1="Hello!";//
             MessageBox(t1,"This is text",MB_OK);
    //CDialog::OnOK();//把这个去掉
    }
      

  2.   

    如果调用了CDialog::OK(),对话框就关闭了。
    另外,你T1="hello"后,还要调用UpdateData.
      

  3.   

    void CMy22Dlg::OnOK() 
    {
    // TODO: Add extra validation here
    t1="Hello!";
    UpdateData(FALSE);
    }另外,可以添加一个按钮,不要改这个OK按钮,这样它的功能就被覆盖了。
      

  4.   

    请问CDialog::OnOK();
    为什么会让对话框关掉呢?这句什么意思?
    还有,UpdateData(FALSE);
    什么意思?每次操作都需要这样一下吗?