热情软件屋

 

为什么访问对话框的控件会出错


编号:QA003310
建立日期: 2000年9月7日 最后修改日期:2000年9月7日
所属类别:

rdr:
    操作系统: win98
    编程工具: Vc++6
    问题: 编译无问题,但执行到下列语句即出错。
    请问下面语句有什么问题?
    1、CDlg_DictMain r;
    2、CEdit* pMyEdit=(CEdit*)r.GetDlgItem(IDC_EDIT4);
    3、pMyEdit->SetWindowText("这是SetWindowText函数的显示。");
    水平: 刚入门

回答:

    看样子你是在主程序中调用那几句程序的,但是这样是绝对不正确的,因为 CDlg_DictMain r 一句只是告诉系统创建一个 CDlg_DictMain 对象,但该对象并没有真正产生,必须经过 OnCreate() 或 DoModal() 才真正产生,它只是简单得构造了一个对话框类,对话框中的所有控件均没真正产生,故下面几句直接对对话框内的操作必然出错,那几句语句应该放在对话框程序段去执行,或该对话框是无模式对话框,且执行了 OnCreate() 之后。

此问题由SF Tiger回答。

 
把这个问题推荐给朋友
   
   
您的意见类别
您的名字
您的电子邮件
您的建议(请尽可能详细)
 
 

版权所有 1997-2008 热情软件屋
如果您有任何建议和意见, 请给我发个电子邮件 askpro@china-askpro.com
Web Designed by ZebraStudio