![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
логотип при загрузке программы
quadronik © (2005-09-21 21:01:00)Вот решил в свою программу добавить такую же фичу как и ворде(при загрузке программы висит логотип ворда). Но ведь, как мне известно, первым грузится именно главная форма, а она у меня уже нагружена большим количеством компонентов.
Вопрос: можно ли сделать так чтобы этот эффект достигался не главной формой, следующей созданной? Как это реализовать?
Спасибо.
kami (2005-09-22 02:42:00) [1]в .dpr :
uses
Forms,
Unit1 in 'Unit1.pas' {Form1},//здесь основная форма
Unit2 in 'Unit2.pas' {Form2};//а здесь - заставка
begin
Application.Initialize;
Form2:=TForm2.Create(Application);
Form2.Show;
Application.CreateForm(TForm1, Form1);
Application.Run;
end.
в Form1.OnCreate :
begin
//--------------
FreeAndNil(Form2);
//--------------
end;
GuAV (2005-09-22 01:29:00) [2]Можно создавать форму в инициализации. Приме:
.pas
unit Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, AppEvnts;
type
TWaitForm = class(TForm)
ApplicationEvents1: TApplicationEvents;
procedure ApplicationEvents1Idle(Sender: TObject; var Done: Boolean);
private
{ Private declarations }
public
{ Public declarations }
end;
var
WaitForm: TWaitForm;
implementation
{$R *.dfm}
procedure TWaitForm.ApplicationEvents1Idle(Sender: TObject;
var Done: Boolean);
begin
Done := True;
Release;
end;
var
InitPrev: procedure;
procedure MyInitProcedure;
begin
try
TWaitForm.Create(Application).Show;
finally
if Assigned(InitPrev) then
InitPrev;
end;
end;
initialization
InitPrev := InitProc;
InitProc := @MyInitProcedure;
end.
.dfm
object WaitForm: TWaitForm
Left = 480
Top = 459
Width = 475
Height = 210
Caption = 'Splash'
Color = clBtnFace
Font.Charset = DEFAULT_CHARSET
Font.Color = clWindowText
Font.Height = -11
Font.Name = 'MS Sans Serif'
Font.Style = []
OldCreateOrder = False
PixelsPerInch = 96
TextHeight = 13
object ApplicationEvents1: TApplicationEvents
OnIdle = ApplicationEvents1Idle
Left = 200
Top = 72
end
end
Кефир87 (2005-09-22 01:25:00) [3]Ну так и сделать сплеш форму главной. в чем проблема? А после создания всех форм главню (сплэш) спрятать. Вообще можно есть способов...
Кефир87 (2005-09-22 01:25:00) [4]Ну так и сделать сплеш форму главной. в чем проблема? А после создания всех форм главню (сплэш) спрятать. Вообще можно есть способов...
quadronik (2005-09-21 21:08:00) [5]прошу прощения.. за вопрос не в тему конференции... с братом заговорился..