我现在想实现这样一个功能:在主界面,按button1,进入次界面。在次界面内按button2,关闭次界面回到主界面。谢谢

解决方案 »

  1.   

    处理button事件,然后domodal 不就行了吗
      

  2.   

    button1中domodal出窗口2,Button2就是它的ok或者cancel按钮
      

  3.   

      是不是隐藏dialog1,显示dialog2就是
      ShowWindow(SW_HIDE);
        CDialog dialog2;
        dialog2.DoModal();
    那把dialog2隐藏,显示dialog1是不是
        dialog2.ShowWindow(SW_HIDE);
        dialog1.ShowWindow(SW_RESTORE);
      

  4.   

    这种做法的方法很多,一般的处理如果是界面的形式可以采用无模式对话框实现你的界面。
    然后在需要控制的地方进行 控件句柄-》showwindow就可以了。
    或者采用控件的方式,比如static控件等,方法也是这样的。
    工控中间有很多背景贴图的方法,一个图片为一个背景,这样就需要在ONPAINT中进行刷新控制了。
      

  5.   

    具体怎么实现呢?
    m_demarcate->Create(IDD_DIALOG_RUN,this);
    m_demarcate->ShowWindow(true);编译有以下错误
    G:\RobotMonitor\RobotMonitorDlg.cpp(210) : error C2819: type 'CButton' does not have an overloaded member 'operator ->'
    G:\RobotMonitor\RobotMonitorDlg.cpp(210) : error C2227: left of '->Create' must point to class/struct/union
      

  6.   

    不知道楼主是不是要实现类似向导的画面?
    如果是这样的话,可以把要切换的画面类型设置成Child类型,
    之后创建的时候设置一个父窗口给它,就可以了。
      

  7.   

    谁帮我写几行代码好了,比如主界面上的button1,按button1调出次界面。void CRobotMonitorDlg::OnButton1() 
    {
    // TODO: Add your control notification handler code here
    ShowWindow(SW_HIDE);//隐藏主界面
    接下来怎么写?把另外一个界面调出来
      

  8.   

    现在我使用下面的代码打开一个对话框
    :CDialog DemarcateDlg;
        DemarcateDlg.DoModal();
    编译的时候没有错,但是运行以后,只要一点button就会出现
    Debug Assertion Failed!Program:
    File:dlgcore.cpp
    Line:494For information on how your program can cause an assertion failure,see the visual C ++ documentation on asserts.
      

  9.   

    你怎么用CDialog直接声明对象?
    必须有一个从CDialog派生出来的类才可以啊。
    在资源里加入一个对话框资源,再从这个资源生成一个基于CDialog的类,
    再用这个类创建并显示对话框。
      

  10.   

    已经新建了一个新的对话框了,也关联类了,就是不知道怎么弹出子对话框,求代码。子对话框的类名就是DemarcateDlg。怎么写弹出的代码,谢谢了
      

  11.   


    void CRobotMonitorDlg::OnButton1() 

    // TODO: Add your control notification handler code here 
    ShowWindow(SW_HIDE);//隐藏主界面 
    把另外一个界面调出来
    CDemarcateDlg dlg; 
        if(dlg.DoModal()== IDOK)
    {
    ShowWindow(SW_SHOW);//显示主界面 
    }