用application.mainform得到Tform后怎么访问用户自定义的变量呢?

解决方案 »

  1.   

    将Application.MainForm强制转换成实际的主窗体类名。procedure TForm1.Button1Click(Sender: TObject);
    begin
      Showmessage(TForm1(Application.MainForm).Button1.Name);
    end;
      

  2.   

    我要的是不知道主窗体的类名,只得到了Tform型时候的方法。
      

  3.   

    那自己用findcomponents去找好咯
      

  4.   

    在主窗体里面是变量不知用findcomponents怎么找呢?
      

  5.   

    没有反射还真的不好搞,估计2009可能可以用classname和反射机制来取.
      

  6.   

    检查窗体类名或者类,然后强制该Form为某类型
      

  7.   

    如果是published属性,可以用rtti来找。否则应该没戏le。
      

  8.   

    将变量封装在主窗体的类中,然后就像使用一半对象的属性一样.
    如在type时这样
    Type
      TForm1 = class(Tform)
        //省略系统自动产生的
        propority MyVar : string read GetMyVar write SetMyVar;//自己定义变量
      end;