问题1:在一个对话框中, 打开了另一个对话框DoModel(), 如何将子对话框中的数据传给上一个对话框?注意是在该子对话框还没有结算之前.问题2:这个子对话框的DoModel()改成Create(), 想做成Modeless的,但是这个对话框却出不来,什么问题?
问题3:可以把主次对话框放在一各对话框中吗?
 先谢了!
 

解决方案 »

  1.   

    1 if( child.domodal()==IDOK ){
          m_parent=m_child;
          ...
      }2 showwindow()  ?3 你是说属性表吗?
      

  2.   


    if( child.domodal()==IDOK ){
          m_parent=child.m_child;
          ...
      }
    2.只Create(),不ShowWindow()是不会显示出对话框的。3.第三个说的不清。
     是不是可以把父Dialog隐藏,在它的位置显示子Dialog呢。
      

  3.   


     
    1:我觉得可以让子对话框发消息给父对话框,
    2:Create之后,要ShowWindow(SW_SHOW)出来,同时也要注意你的子对话框属性设置
    3:可以的,可以把他们设成父子关系,:)
      

  4.   

    1.在子对话框里取父对话框 CWnd::GetParent(),然后响应子对话框的各个消息
    2.Create()后,ShowWindow(SW_SHOW),子对话框的属性不能设为Control
    2.可以,主次Dialog根据情况ShowWindow(SW_SHOW),或Show_Window(SW_HIDE)我前段时间做过一个Dialog,在一个Dialog中另外放了两个子Dialog,根据需求来显示其中的某一个,不知道你的要求跟我是不是差很多?
      

  5.   

    各位高手谢了, 但是你们回答的都不是我想要的。
    首先第一个问题,有人说if( child.domodal()==IDOK ){
          m_parent=m_child;
          ...
      }
    这不是我想要的,我的要求是在子对话框没有结束前,就把按键的情况反映出来。这些问题的背景是这样的,我设计了一个屏幕键盘对话框,上面有一些字母和数字的基本按钮,我的要求是按任何一各键时, 在主对话框中的EDIT控件中就能反映出来。我现在的方法只是在屏幕键盘中增加一个EDIT控件,显示输入的按键情况。等按结束后,才把输入反馈到主对话框中。
    第二个问题是,我用了CREATE,也用了SHOW,但是屏幕上该对话框只是一刹而过。不能得到控制。第三个问题是:我想既然有这个通用的屏幕键盘对话框,我怎么样把任意一个对话框和它结合起来。!谢。
      

  6.   


    if( child.domodal()==IDOK ){
          m_parent=child.m_child;
          ...
      }
    2.要么你自己添加个对话框对象 然后create
    要么你就从资源里添加对话框 domadl
      

  7.   

    再回复:
    1.响应按键中的OnClick()函数.2.重载父对话框中的OnInitDialog()函数,在里面加入子对话框的  子对话框.Create(),和  子对话框.EnableWindow(true),子对话框.ShowWindow(SW_SHOW),子对话框.MoveWindow(Rect). 另外:子对话框属性设置为Style:Child,和MoreStyle:Disable.3.不明白,再说详细一点:)
      

  8.   

    1.if(Child.DoModal==IDOK)
    {
       m_Parent=m_Child;
       ...
    }
    2.ShowWindow(SW_SHOW);
    3.看不懂