Splash screen podróba ...

Qiub

Pierwsze co zastrzegam to to, że nie jest to jakiś profesionalny splash screen (np. taki jak zaprezentowany bodajże przez Sheitara) !!!

Opis:
Użyjemy dwóch formularzy (form) + na drugiej co tam dodatkowego chcemy...
Form1 - forma główna /nasz prog/
Form2 - forma "splash screen", które wyświetli się nam po odpaleniu aplikacji.

  1. A więc ... odpalamy Delphiego (sprawdzane na 6,7 enterprise), otwiera się nam nowa forma ...
  2. Mamy formę główną, klikamy na nią podwójnie, pojawia się nam kod żródłowy formy. Tam wpisujemy kodzik taki:

begin //ten kawałek będzie oryginalnie
//poniższy kod wklejamy, przepisujemy, czy jak tam chcecie
Form2:=TForm2.Create(nil);
Form2.ShowModal;
//tu możemy coś innego dorzucić - pętle, ale nie wiem czy jest sens
end; //koniec naszego dobrego

następnie dodajemy File/New/New Form
pojawi się nam nowa forma ... oryginalnie będzie nazwana Form2!
Na tej nowej formie robimy co chcemy, będzie to nasz powitalny splash screen.
Myślę, że powinno wsio działać. Chociaż zdażyło się mnie, że wypadł błąd, kompilator dowalił się o to, że nie ma formy o nazwie Form2 chociaż takowa była, ominąłem to w sposób taki : w interpretacji dodałem

uses Form2; //ewentualnie Unit2

Powinno działać ...

W razie czego: [email protected].
Dam przykładowy kodzik aplikacji.

10 komentarzy

Nawet fajne i łatwiej zastosować od kodu sheitara :)

a co jest trudnego w kodzie sheitara ?? :)

Długość ;P

Kod sheitara wcale nie jest taki dlugi ani trudny!!! I dziala chyba lepiej... :P

A jak zrobić zeby po np. 5 sek. splash sie zamknął .. bo cos mi nieidzie :)

Może jeszcze powiesz w jaki sposób obliczyć długość uruchamiania programu i przedstwić to na ProgressBar???

Zasada działania jest bardzo prosta! Myślę, że na formię wyskakującej można wszystko ustawić łącznie z czasem pozostałym do zamknięcia, itd.

"Sven" mam dla ciebie kodzik, na to aby po 5 sek. form2 się zamknął

wstaw "timer1" (zakładka System) i "ProgressBar1" (Win32), "Button1" oraz "Form2" (nowe okienko)

W timer1 - enabled ustaw na false
Interval = 1000

kliknij 2x na Button1 i wpisz pomiędzy begin a end

Form2.showmodal;
timer1.enabled := true;

ok a teraz kliknij 2x do timer1, pomiędzy begin a end wpisz:

ProgressBar1.Position := ProgressBar1.Position + 20;
if ProgressBar1.Position = 100 then
begin
form2.close;
timer1.enabled := false;
ProgressBar1.Position := 0;
end

I to by było na tyle :)
..:: www.pskgaik.prv.pl ::..
wszysytko czego potrzebujesz

dziex jas_dream za ten kod przyda mi sie do mojego edytora html;P:>;)

A zkąd i za ile masz "enterprise"??
:J