我已经在unit_a中uses了unit_b,且调用语句如下
form_b:=Tform_b.create(self);
form_b.show;
可是出现了一个“from子句语法错误”的错误,怎么回事呢?请高手指点

解决方案 »

  1.   

    给窗体命名的时候尽量不要使用与关键字有关的名字
    frm_b:=tfrm_b.create(self);
    frm_b.showmodel;
    frm_b.close;
      

  2.   

    Tform_b的OnCreate或OnShow事件里有没有做什么其它的事情,比较打开query等
      

  3.   

    不好意思,打错了
    frm_b:=tfrm_b.create(self);
    frm_b.showmodel;
    frm_b.free
    ----------你大概没有free
      

  4.   

    现在错误是undeclared identifier:'form_b'
      

  5.   

    to blux(小志) 
    你是不是改名了???
    你要把uses中的form_b删了,编译的时候会自动提示的,你把新的名字加上
      

  6.   

    uses: .. ............
    ......show
      

  7.   

    unit_b中有没有var form_b:Tform_b;这个声明
      

  8.   

    Application.CreateForm(TForm_B, Form_B);
      try
        Form_B.ShowModal;
      finally
        Form_B.Free;
      end;
      

  9.   

    没用啊
    现在错误是undeclared identifier:'Tform_b'
      

  10.   

    分两种情况:
    1.当被调用的form全局变量时用:  Form_B:=TForm_B.create(nil)
      try
        Form_B.ShowModal;
      finally
        FreeAndNil(Form_B);
      end;2.当被调用的form局部变量时用:
      Form_B:=TForm_B.create(nil)
      try
        Form_B.ShowModal;
      finally
        Form_B.free;
      end;
      

  11.   

    可是使用全部默认的变量Form_B;
    也可以使用本地局部的变量Form_B;
      

  12.   

    你可以在formA中加入panel组件
    然后用下面的语句
    formA.dock(panel,rectbount(formB))
    FORMB.SHOW;
      

  13.   

    var formb :tfromb
    formb :=tfromb.create(application);
    fomb.show;