现在两个窗体Login与main,我在login 里面设置了两个变量一个是用户名,一个是用户类型yhlx,当登陆正常时,main窗体出现,我要在main窗体里根据前面的login窗体里的用户类型进行判断,即如果是用户类型是管理员,main窗体里所有的控件都正常显示,如果是一般用户,则一些控件是不可用的。我在main窗体里uses了login ,参数也好象也传过来了,但是,用main 中的label1.caption:=yhlx时,却什么也不显示,我定义的都是string类型,请问这是怎么回事呀?

解决方案 »

  1.   

    定义全局变量吧,或者自己写一个事件来处理login里用 main.事件名(用户名,密码) 调用
      

  2.   

    定义全局变量,在login把用户类型赋值给全局变量,在main中调用全局变量就可以了
      

  3.   

    是不是先创建的MAIN,你从OnCreate事件写的
    从OnShow里面试试
    不知道你怎么写的,不好说,呵呵
      

  4.   

    创建过程是
    begin
      Application.Initialize;
      Application.CreateForm(Tloginform, loginform);
      Application.CreateForm(Tmain, main);
      Application.CreateForm(Tuserform, userform);
      Application.CreateForm(Tcountform, countform);
      Application.CreateForm(Tcustom_form, custom_form);
      Application.CreateForm(Tsystem_nform, system_nform);
      Application.CreateForm(Tcustom_form, custom_form);
      Application.CreateForm(TForm1, Form1);
      Application.Run;
    end.我在main的onshow里面写的代码,返回的值就是空,用showmessage(yhlx),也是什么也没有...奇了怪了
      

  5.   

    怪载,我又重新弄个project试,结果数据就传过来了,可是在原来的程序里,数据就是不显示:(
      

  6.   

    Application.CreateForm(Tloginform,   loginform); 
        Application.CreateForm(Tmain,   main); 估计是你这两个窗体创建的次序,两次不一样的
      

  7.   

    Application.CreateForm(Tloginform,   loginform); 
        Application.CreateForm(Tmain,   main); 估计是你这两个窗体创建的次序,两次不一样的