1、如何让主界面出来前,先弹出一个登陆界面?
 2、比如在这个登陆界面中允许 “普通用户”和“高级用户”。如何控制他们的权限:比如 “普通用户”登陆的话,有些按扭 是无效的;而 “高级用户”登陆的话 这些按扭或菜单 是有效的。
如何解决?

解决方案 »

  1.   

    1. 在mainform的OnCreate中,把登陆窗口ShowModal,进行登陆和验证
    2. 我的一个办法是:
      给每个控件的tag属性赋值:0,1,2,3
      初0、中1、高2、超3级用户 ,只显示 tag比级别小的控件。  fro i:=0  to self.componentcount-1 do
        if (components[i] is TButton) and (self.components[i].tag > UserLevel) then
          (components[i] as TButton).enabled:=False;
      

  2.   


    program GoldSilver;uses
      Forms,
      .......
      .......  
      YrShopSalePMQR in 'YrShopSalePMQR.pas' {ALSPMQR: TQuickRep};{$R *.res}begin
      Application.Initialize;
      Application.Title := '金银泰';
      //登陆验证框  
      ALLogin:= TALLogin.Create(Application);
      ALLogin.ShowModal;
      if not ALLogin.PassOK then
      begin
        ALLogin.close;
        Exit;
      end;
    //显示FLASH 窗口
      ALLogin.free;
      ALflash:= TALflash.Create(Application);
      ALflash.Show;
      ALflash.Update;
     
     Application.CreateForm(TALYRM, ALYRM);
      Application.CreateForm(TDMYR, DMYR);
      Application.CreateForm(TAFInDate, AFInDate);
      Application.CreateForm(TALCYHQR, ALCYHQR);
      Application.CreateForm(TALZLQR, ALZLQR);
      Application.CreateForm(TALCIOQR, ALCIOQR);
      Application.CreateForm(TALZIOQR, ALZIOQR);
      Application.CreateForm(TALSIOQR, ALSIOQR);
      Application.CreateForm(TALSXsQR, ALSXsQR);
      Application.CreateForm(TALSCheckQR, ALSCheckQR);
      Application.CreateForm(TALWastrelQR, ALWastrelQR);
      Application.CreateForm(TALMoneyQR, ALMoneyQR);
      Application.CreateForm(TALScMoneyQR, ALScMoneyQR);
      Application.CreateForm(TALXsTJQR, ALXsTJQR);
      Application.CreateForm(TALCheckQR, ALCheckQR);
      Application.CreateForm(TALBooKQR, ALBooKQR);
      Application.CreateForm(TALStockQR, ALStockQR);
      Application.CreateForm(TALFStockQR, ALFStockQR);
      Application.CreateForm(TALBooKSTQR, ALBooKSTQR);
      Application.CreateForm(TALPandLQR, ALPandLQR);
      Application.CreateForm(TALZLieBQR, ALZLieBQR);
      Application.CreateForm(TALZCheckQR, ALZCheckQR);
      Application.CreateForm(TALShopTJ, ALShopTJ);
      Application.CreateForm(TALShopKH, ALShopKH);
      Application.CreateForm(TALSKHQR, ALSKHQR);
      Application.CreateForm(TALShopPM, ALShopPM);
      Application.CreateForm(TALSPMQR, ALSPMQR);
     
       ALflash.free;//关闭FLASH窗口
      Application.Run;
    end.关于权限 你按照  gub(gub)所说也可以。不过最好建一个权限库