Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.10.15;
Скачать: CL | DM;

Вниз

Нужна помощь   Найти похожие ветки 

 
dimon1   (2006-09-06 06:19) [0]

Подскажите, как показать изображение до появления главной формы приложение?


 
Elen ©   (2006-09-06 08:04) [1]


> dimon1

Создать вспомогательную форму раньше главной, на которой будет изображение. Показать ее до создания главной формы и удалить после


 
Loginov Dmitry ©   (2006-09-06 08:05) [2]

> Подскажите, как показать изображение до появления главной
> формы приложение?


Покажи его на другой форме, которую открывай до появления главной формы приложения.


 
dimon1   (2006-09-06 08:52) [3]

Пробовал! Но, во первых не получаилось показать дочернюю форму до появления главной, пришлось прятать ее с помощью ShowWindow, а затем снова показывать, а во вторых изображение на форме появляется с небольшой задержкой. Может есть другие варианты?


 
PSPF2003 ©   (2006-09-06 09:12) [4]

Заставка для программы (24.03.00)
Сведения о программе, авторские права и т.д., лучше оформить в виде отдельной формы и показывать ее при запуске программы (как это сделано в Word).
Сделать это не сложно:
1. Создаете форму (например SplashForm).
2. Объявляете ее свободной (availableForms).
3. В Progect Source вставляете следующее (например):
   program Splashin;
   uses
       Forms,
       Main in "MAIN.PAS",
       Splash in "SPLASH.PAS"
   {$R *.RES}
   begin
       try
       SplashForm := TSplashForm.Create(Application);
       SplashForm.Show;
       SplashForm.Update;
       Application.CreateForm(TMainForm, MainForm);
       SplashForm.Hide;
       finally
       SplashForm.Free;
       end;
       Application.Run;
   end.
И форма SplashForm держится на экране пока выполняется Create в главной форме. Но иногда она появляется и пропадает очень быстро, поэтому нужно сделать задержку:
1. Добавляете на форму таймер с событием:
   procedure TSplashForm.Timer1Timer(Sender: TObject);
   begin
     Timer1.Enabled := False;
   end;
2. Событие onCloseQuery для формы:
   procedure TSplashForm.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
   begin
     CanClose := Not Timer1.Enabled;
   end;
3. И перед SplashForm.Hide; ставите цикл:
   repeat
     Application.ProcessMessages;
   until SplashForm.CloseQuery;
4. Все! Осталось установить на таймере период задержки 3-4 секунды.
5. На последок, у такой формы желательно убрать Caption:
SetWindowLong (Main.Handle,GWL_STYLE, GetWindowLong(Main.Handle, GWL_STYLE) AND NOT WS_CAPTION OR WS_SIZEBOX);


 
PZ   (2006-09-06 09:13) [5]

Сделать главную форму и форму заставки Splash с картинкой на Image.
Вот пример моей программы:

program Dal;

uses
 Forms,
 DalUn in "DalUn.pas" {DalFrm},
 .......
 Splash in "SPLASH.PAS" {SplashForm};

{$R *.RES}

begin
 SplashForm := TSplashForm.Create(Application);
 SplashForm.Show;       // Показываем заставку
 SplashForm.Update;
 Application.CreateForm(TDalFrm, DalFrm);  // Загрузка главной формы
 SplashForm.Close;      // После загрузки гл. формы заставку закрываем
 Application.ShowHint := True;
 Application.Run;
end.


 
dimon1   (2006-09-06 09:19) [6]

Спосибо за помощ!


 
PSPF2003 ©   (2006-09-06 09:29) [7]

Помощь с мягким знаком пишется…



Страницы: 1 вся ветка

Текущий архив: 2006.10.15;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.045 c
2-1159520325
tyo
2006-09-29 12:58
2006.10.15
запись в базу через DBGrid


2-1159352100
TrainerOfDolphins
2006-09-27 14:15
2006.10.15
Программное возбуждение событий.


2-1159698030
redlord
2006-10-01 14:20
2006.10.15
listbox выводить текст разным цветом


2-1159264876
vegarulez
2006-09-26 14:01
2006.10.15
Вопрос про мышь и 2 монитора (раб. стола).


15-1158921694
Aust
2006-09-22 14:41
2006.10.15
сканер





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский