在点击一个按钮后弹出一个对话框,怎样在程序里动态修改子对话框的Caption(标题)属性??

解决方案 »

  1.   

    1.获取对话框类的对象,然后通过对象修改
    2.FindWindow(Ex) / EnumChildWindows / SetWindowText / SendMessage
      

  2.   

    通过子对话框类的指针CDialog*,调用CWnd::SetWindowText()就可以,或者得到子窗口的HWND窗口句柄,利用API函数::SetWindowText(HWND, _T("XXX"));也可以啊,或者发送消息WM_SETTEXT
      

  3.   

    void CTestDlg::OnStatic21() 
    {
    CDining1 *pDlg1=new CDining1;
    pDlg1->Create(IDD_DIALOG12,this);
            CWnd* pWnd = GetDlgItem(IDD_DIALOG12);
    pWnd->SetDlgItemText(IDD_DIALOG12,"ChangeCaption"); 
            pDlg1->ShowWindow(SW_SHOW);
    }
    我这样写程序在运行的时候出错,不知道是怎么回事!
    SetDlgItemText()函数该如何去用呢??
      

  4.   

    非模态的子对话框哈,
    GetDlgItem(IDD_DIALOG12)这样拿啥啊,你不是有pDlg1这个指针了吗?
    直接pDlg-》SetWindowText()不行吗?
      

  5.   

    CWnd* pWnd = GetDlgItem(IDD_DIALOG12)->GetSafeHandle();
    这样就可以了
      

  6.   

    ::SetWindowText(GetDlgItem(IDD_DIALOG12)->GetSafeHwnd(), _T("xxx"));