try
Application.Initialize;
Application.Title := '123';
Application.CreateForm(TfrmMain, frmMain);
Application.CreateForm(TfrmFlash, frmFlash);
frmFlash.Show;
frmFlash.Refresh;
finally
  frmFlash.Free;
end;
Application.Run;

解决方案 »

  1.   

    都跑出来了?什么意思?
    登录窗口可以放在pdr文件的MainForm.Create之前,或者在MainForm的onShow中处理。
      

  2.   

    1: 可以设置登陆界面为主窗体
    2:在工程文件中的Applicatio.run 前写:
    application.initialize;
    Application.createForm(Form1,Tform1);
    100:
    Form1.Show;
    if edit1.text<>'yourpassword' then
    goto 100
    else
    begin 
    form1.close;
    .....
    end;
      

  3.   

    登录窗口可以放在dpr文件的MainForm.Create之前Create
      

  4.   

    //登陆窗口的代码 frmLogin
    unit frmLogin;interfaceuses
      Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
      StdCtrls, ExtCtrls,frmFull,unit1;type
      TForm4 = class(TForm)
        imgAthena: TImage;
        lblUserName: TLabel;
        lblPassword: TLabel;
        edtUserName: TEdit;
        edtPassWord: TEdit;
        btnOK: TButton;
        btnCancel: TButton;
        procedure btnOKClick(Sender: TObject);
      private
        { Private declarations }
      public
        { Public declarations }
      end;var
      Form4: TForm4;implementation{$R *.DFM}procedure TForm4.btnOKClick(Sender: TObject);
    begin
    //==============打开oracle记录集
     DataSet.Connection:=Cnn;
     DataSet.CommandText:='select * from pwd where usrname=' + edtUserName.Text + ' and passwd=' + edtPassWord.Text + '';
     DataSet.Open;
     if dataset.Fields.Count<>0 then
            begin
                    showmessage('用户名或密码不正确!');
                    close;
            end
     else
            begin
                    form4.hide;
                    form1.show;   //这个是我要显示的主窗体。
            end
    end;
    //project1的代码
    program Project1;uses
      Forms,
      Unit1 in 'Unit1.pas' {Form1},
      Unit2 in 'Unit2.pas' {Form2},
      frmFull in 'frmFull.pas' {Form3},
      frmLogin in 'frmLogin.pas' {Form4};{$R *.RES}begin
      Application.Initialize;
      Application.CreateForm(TForm1, Form1);
      Application.CreateForm(TForm2, Form2);
      Application.CreateForm(TForm3, Form3);
      Application.CreateForm(TForm4, Form4);
      Application.Run;
    end.
      

  5.   

    在VB里面这是一个很EASY的问题!只要将frmLogin设为启动就OK了,想不到DELPHI这么麻烦?谔!
      

  6.   

    在工程文件里把Application.createForm(Form1,Tform1);之类的窗体都去掉需要用那一个九用那一个可用Application.createForm(Form1,Tform1)创建主窗体。其他的窗体可用if not Assigned(myform) then Myform:=Tmyform.create(self);myform.show;创建使用
      

  7.   

    给你一段:
    procedure TMainForm.FormShow(Sender: TObject);
    var
      LogonForm : TLogonForm;
      i : integer;
      MyIniFile : TiniFile;
    begin
      LogonForm := TLogonForm.Create(self);
      with DataMod.TblManager do
      begin
        Open;
        First;
        while not eof do
        begin
          LogonForm.CmbBoxLogName.Items.Add(Fieldbyname('Name').AsString);
          Next;
        end;
      end;
      for i:=0 to 3 do
      begin
        if i=3 then
        begin
          showmessage('登录失败!!!');
          Application.Terminate;
        end
        else begin
          if LogonForm.ShowModal=mrOK then
          begin
            LogonName := LogonForm.CmbBoxLogName.Text;
            if LogonName = 'SYSADMINISTRATOR' then
            begin
              MyIniFile := TiniFile.Create(GetSysDirectoryPath+'\slower.ini');
              try
               if not MyIniFile.SectionExists('manager') then
                 MyIniFile.WriteString('manager','pwd','8037925');
               if LogonForm.EditPassword.Text = MyIniFile.ReadString('manager','pwd','ErrorPWD') then
               begin
    //             Popedom:= 0;
                 Break
               end
               else
                 showmessage('密码错误!');
              finally
                MyIniFile.Free;
              end;
            end
            else
            with DataMod.TblManager do
            begin
              if Locate('Name',vararrayof([LogonName]),[]) then
              begin
                if LogonForm.EditPassword.Text = Fieldbyname('password').AsString then
                begin
    //              PopedomSingle := Fieldbyname('popedom1').AsBoolean;
                  Break;
                end
                else
                  Showmessage('密码错误!');
              end
              else
                showmessage('用户名不存在!!!')
            end;
          end
          else begin
            Application.Terminate;
            Exit;
          end;
        end;
      end;
      StatusBar1.Panels[2].Text := '当前操作员:' + LogonName;
      StatusBar1.Panels[1].Text := '当前日期:' + DateToStr(Now);
      ActionSaveLogon.Execute;
    end;
      

  8.   

    Application.Initialize;
      Application.CreateForm(Tdm1, dm1); // 数据模块
      Application.CreateForm(TFrmLogin, FrmLogin); // 登录窗口
      if FrmLogin.Login(...)=mrok then // 登录函数,返回值正确
      begin
         FrmLogin.Hide;
         FrmLogin.Free;
         FrmLogin:=Nil;
         Application.CreateForm(TForm1, Form1);  // 真正的主窗口
         Application.CreateForm(TForm2, Form2);
         Application.CreateForm(TForm3, Form3);
         Application.CreateForm(TForm4, Form4);
         Application.CreateForm(TForm5, Form5);
         Application.CreateForm(TForm6, Form6);
         Application.Run;
      end
      else Application.Terminate;
      

  9.   

    对项目文件编程同时使用一数据窗体,在数据窗体中定义一变量如:canlogin为boolean数据类型,在登录窗体的oncreate事件中置canlogin为false,把btnokclick事件中条件语句如下
        form4.hide;
        form1.show;
    改为
        canlogin:=true;
        form4.close;
    在close事件中加入如下代码
        action:=cafree;
    修改项文件为
    begin
      Application.Initialize;
      Application.CreateForm(TForm4, Form4);
      form4.hide;
      form4.showmodal;
      if canlogin=true then
      begin
         Application.CreateForm(TForm1, Form1);
         Application.CreateForm(TForm2, Form2);
         Application.CreateForm(TForm3, Form3);
         Application.Run;
      end
      else
         application.terminate;
    end.
      

  10.   

    其实你只要在菜单:Projects-->Options里,在Main form的下拉框中选择你要的窗体就行了,至于别的窗体可以先设visible为false,然后再调用你需要的窗体
      

  11.   

    try
    Application.Initialize;
    Application.Title := '123';
    Application.CreateForm(TfrmMain, frmMain);
    Application.CreateForm(TfrmFlash, frmFlash);
    frmFlash.Show;
    frmFlash.Refresh;
    finally
      frmFlash.Free;
    end;
    Application.Run
    改成:
    try
    Application.Initialize;
    Application.Title := '123';
    frmFlash = TfrmFlash.Create(Application)
    frmFlash.Show;
    frmFlash.Update;
    Application.CreateForm(TfrmMain, frmMain);
    finally
      frmFlash.Hide
      frmFlash.Free;
    end;
    Application.Run