Показать сообщение отдельно
  #2  
Старый 17.09.2009, 20:23
roamer roamer вне форума
Активный
 
Регистрация: 15.04.2009
Сообщения: 369
Репутация: 93
По умолчанию

Как вариант - что-то вроде этого (привязка к событию по таймеру, но можно и к др.событиям) :

Код:
program FODB_Query;
uses
  ...,                  
  Forms,
  fdb_logoform_01 in 'fdb_logoform_01.pas' {Form_Logo_01},
  fdb_logoform_02 in 'fdb_logoform_02.pas' {Form_Logo_02},
  ...;          

{$R *.res}

begin
     Application.Initialize;

     //------------------------------------
     //Создается 1-я форма
     Form_Logo_01 := TForm_Logo.Create(nil);
     Form_Logo_01.Show;
     Form_Logo_01.lbl_State.Caption:='Сообщение-1 на ЛогоФорме-1 ...';
     Application.ProcessMessages;
     //------------------------------------                                                                            

     Application.CreateForm(TForm1, Form1);
     ...             
     Application.Run;
end.

=======================================

  
type
  TForm1 = class(TForm)
    ...        
    iLogo : integer;                                                  

  end;
          
procedure TForm1.FormCreate(Sender: TObject);
begin
  ...      
  iLogo := 1;                                                  
  ...      
  
  Timer1.Enabled:=true;
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
  Timer1.Enaled:=false;
  Label_DT.Caption:=DateTimeToStr(NOW);

  if iLogo=5 then begin                                               
     //Уничтожается 2-я форма
     if Form_Logo_02<>nil then begin
        FreeAndNil(Form_Logo_02);
        Form_Logo_02:=NIL;
        iLogo := iLogo+1;                                                  
     end;
  end;          
    
  if iLogo=4 then begin                                               
     //Создается 2-я форма
     Form_Logo_02 := TForm_Logo.Create(nil);
     Form_Logo_02.Show;
     Form_Logo_02.lbl_State.Caption:='Сообщение-1 на ЛогоФорме-2 ...';
     iLogo := iLogo+1;                                                  
     Application.ProcessMessages;
  end;          
    
  if iLogo=3 then begin                                               
     //Уничтожается 1-я форма
     if Form_Logo_01<>nil then begin
        FreeAndNil(Form_Logo_01);
        Form_Logo_01:=NIL;
        iLogo := iLogo+1;                                                  
     end;
  end;          

  if iLogo=2 then begin
     if Form_Logo_01<>nil then begin
        Form_Logo_01.lbl_State.Caption:='Сообщение-3 на ЛогоФорме-1 ...';
        Application.ProcessMessages;
        iLogo := iLogo+1;                                                  
     end;
  end;          
    
  if iLogo=1 then begin                                               
     if Form_Logo_01<>nil then begin
        Form_Logo_01.lbl_State.Caption:='Сообщение-2 на ЛогоФорме-1 ...';
        Application.ProcessMessages;
        iLogo := iLogo+1;                                                  
     end;
  end;          

  Timer1.Enaled:=true;
    
end;
Ответить с цитированием