基于MDI的工程,在工具栏中点击“显示”弹出对话框Sheet。
在对话框弹出的同时,需要将一些变量写入到只读Edit中,我将代码写在对话框对应的类中的InitDialog函数中了,但是为什么对话框弹出来的时候,变量都没有写入呢?
谢谢大家帮忙了!

解决方案 »

  1.   

    我是用SetWindowText函数,UpdateData也试过了,好像没用!
      

  2.   

    需要在对话框类中加入编辑框的变量;
    楼主是怎么声明编辑框变量的?
    如果按照向导增加这个变量时选中control value,在初始化的时候直接调用setwindowtext
    代码 
       CEdit MyEdit;//头文件
       //初始化
       MyEdit.SetWindowText("文本内容");
    如果加入变量的时候没有选择control value,采用DDX控件数据交换,注意在给变量赋值之后一定要调用UpdateData
       CString MyEditOne;//头文件
       //初始化
       MyEditOne="文本内容";
       UpdateData(False);
      

  3.   

    你的写法应该正确的
    除非你把变量的属性设置错了
    再着你就是把 value 弄成control了 
      

  4.   

    OnInitDialog()代码如下:
    CEdit *pName = (CEdit *) GetDlgItem( IDC_SOURCE_NAME );
    pName->SetWindowText( file );
    file是全局变量,在其他函数中已经赋值.刚开始这样不行,后来就用ClassWizard增加编辑框的变量m_strName
    代码:
    pName->SetWindowText(m_strName)
    但是还是什么都没有
    我在想会不会与文档视图有关呢?我是在文档工具栏上点击弹出的对话框
    我单独建了一个对话框工程,一样的代码就可以!
    大家帮我啊!
      

  5.   

    CEdit *pName = (CEdit *) GetDlgItem( IDC_SOURCE_NAME );
    pName->SetWindowText( file );
    UpdateData(FALSE);