我设计了一个递归函数,在这个递归函数中,每次都有可能要打开另一个窗口进行修改。我想让这个窗口修改完成后,再继续下面的程序进行递归,该怎么做?
如:
function fun();
begin……
if MessageDlg('修改吗?',mtInformation,[mbYes,mbNo],0)=mrYes then
  begin
    ……
    Form1.show;//就是在这个窗体里完成操作之后,再继续进行下面的程序
    //这里怎样实现暂停?
    fun();
    ……
  end;
……
end;

解决方案 »

  1.   

    function fun();
    begin……
    if MessageDlg('修改吗?',mtInformation,[mbYes,mbNo],0)=mrYes then
      begin
        ……
        if Form1.showmodal=mrok
        then 
          begin    
            ....//就是在这个窗体里完成操作 
          end;
        fun();
        ……
      end;
    ……
    end;
      

  2.   

    不是这样的,我的操作全在那个Form1单元里,而不是在本程序内
      

  3.   

    我知道啊但请你先试验一下好么?
    if Form1.showmodal=mrok
        then 
          begin    
            ....//就是在这个窗体里完成操作 
          end;这段代码就是让你在那个form1里操作啊,当你操作完了,你可以按关闭form1,这是程序回到你原来那里继续进行递归,也可以返回值,继续递归。
      

  4.   

    明白了,搞定了,多谢!原来showmodal还有这个功能呀:)