先定义一另一对话框对象指针 XXdlg* P;
定义一自定义消息,
用 p->sendmessage(YYY,ID_BUTTON)发消息;
在另一对话框中映射消息病处理;

解决方案 »

  1.   

    假设第一个对话框叫DlgA,第二个为DlgB。在第一个对话框的按钮的函数
    DlgA::OnButton1()
    {
      dlgb.GetDlgItem(IDC_XXX)->OnEnable(BOOL); //在DlgA类的头文件中声明DlgB dlgb;
      dlgb.DoModal();
    }
    /*在DlgA类的头文件中包含DlgB类的头文件*/
      

  2.   

    其中一个对话框在OnOk()中
    {
    FindWindow("另一个对话框的类名","另一个对话框的标题名")->GetDlgItem(想改变的按钮的ID)->EnableWindow(FALSE) ;
    }
      

  3.   

        以上诸位的回答都非常好,可是,也许是我没有把问题说清楚,我要改变属性的按钮位于以FormView为基类的单文档窗口上,不是位于另一个对话框上,所以,没法用以上的方法解决,还请诸位高手再出高招。
      

  4.   

    这样,你改一下该对话框中OK按钮对应的ID值,使之位于0x8000到0xBFFF之间,比如IDC_OK = 0X9000 然后用ClassWizard为CMainFrame类加一个相应的处理函数,在里面作相应的处理。这时候,你应该很容易得到CFormView的指针,从而也很容易得到它上面的那个按钮的指针。
      

  5.   

        happylaodu :我像你说的那样做了,但是我在ClassWizard中在CMainFrame类中找不到那个按钮的ID,所以没法进行处理。