2008-11-24 21:40
父对话框调出子对话框后,子对话框中定义了一个cedit类型的变量,对cedit赋值后显示不出来,希望高手指点一下。
void CMy2008Dlg::Onpaihang() { // TODO: Add your control notification handler code here dialogscore scoreboard; scoreboard.DoModal(); scoreboard.m_name1.SetWindowText("1111111"); }这样行不行,好像update不能用在cedit里面吧?
2008-11-24 22:00
提问者采纳
先赋值后打开 看了你是将cedit作为控件变量使用。如果这样的话, 在子对话框中设置一个变量public: CString m_strText 然后在子对话框的 OnInitDialog事件中写 m_name1.SetWindowText(m_strText); 最后的使用方法如下: dialogscore scoreboard; scoreboard.m_strText = _T("11111111"); scoreboard.DoModal(); 也可以将cedit控件作为字符串变量使用 那么在 OnInitDialog事件中写 UpdateData(FALSE);即可 DoModal(); 调用后,不会往下执行的,除非你关闭此对话框。如果关闭了此对话框,那么到 scoreboard.m_name1.SetWindowText("1111111"); 会发生错误的,因为m_name1控件的窗口句柄已经被释放。