Створення splash-заставки h2>
Brutus p>
Думаю
багато хто знає, що таке splash-картинка, але все-таки поясню: це зображення, яке,
яка передує запуску основної програми і зазвичай відображається під час
завантаження програми, що б користувачеві було не так нудно чекати, поки
завантажиться програма. Подібну splash-картинку можна спостерігати під час запуску
Delphi, TheBat!, Dreamveawer та ін Зараз ми займаємося створенням красивою
splash-заставки для Вашої програми. p>
Навіщо? p>
Як
я вже казав, заставка може скрасити очікування запуску програми. До того ж на
заставці можна показувати які ні будь корисні дані або інформацію про
ступеня завантаження програми. Та й це просто красиво. Так само зверну вашу
увагу, що заставка повинна добре виглядати, оскільки саме вона залишає
перші враження про програму (сподіваюся всі знають силу перше враження,
яке потім важко змінити). Так само потрібно дати користувачеві відключати
заставку в настройках, оскільки заставка може просто не сподобатися або
дратувати користувача, і він видалить програму тільки з-за нещасливої
заставки. p>
Як? p>
Дуже
просто. Потрібно знайти підходящу картинку, мати необхідні компоненти
(якщо ви хочете що ні будь відображати на заставці) на формі і написати
кілька рядків коду. p>
Отже,
приступимо. Створіть нову форму і розмістіть на ній картинки і компоненти. Ця
форма і буде відображатися під час завантаження програми. Припустимо ця форма
називається Form2. Рекомендую її властивість BorderStyle встановити в bsNone - в
цьому режимі заголовок вікна не буде відображатися, до того ж не можна буде
змінити розмір вікна. Так само рекомендую змінити властивість цієї форми Position і
встановити як poScreenCenter - у цьому випадку вікно з'явиться в центрі екрану.
Далі в подію головної форми (зазвичай Form1) onShow пропишіть Form2.ShowModal.
Це відкриє вікно Form2 в модальному режимі. Тепер потрібно зробити так, що б
заставка закрилася. Це можна зробити, додавши на форму заставки таймер,
який закриє програму, або ж додавши код закриття заставки після
ініціалізації дій в головній формі, завантаження параметрів і т.п. p>
Тепер
давайте спробуємо як ні будь здивувати користувача. Самий найпростіший спосіб,
це показати деякі дані про комп'ютер в заставці. Розташуйте кілька
label'ов на формі-заставці або прямо на картинці (в цьому випадку потрібно
встановити властивість Label.Transparent: = true). Наступний код записує в
Label1 інформацію про користувача, на якого зареєстрована ОС. Цей код
потрібно розташує у обробнику події OnCreate форми-заставки, так само не
забудьте помістити модуль TRegistry в розділ Uses все тієї ж форми-заставки: p>
var Reg: TRegistry; p>
begin p>
Reg: = TRegistry.Create; p>
Reg.RootKey: = HKEY_LOCAL_MACHINE; p>
Reg.OpenKey ( 'SOFTWAREMicrosoftWindowsCurrentVersion',
False); p>
Label1.Caption: = Reg.ReadString ( 'RegisteredOwner');
p>
Reg.CloseKey; p>
Reg.Free; p>
end; p>
Якщо
ви вловили ідею, то зможете перетворити з заставки справжню SysInfo:).
Наступний спосіб повинен вразити користувача більше, ніж попередній. При
активації форма буде плавно з'являтися і зникати. Я вже писав статтю
'Анімація без зайвих зусиль', там розповідається про анімацію вікон стандартними
winapi функціями та анімації шляхом маніпулювання властивостями форми. Прочитайте
обьязательно! У тій статті були описані властивості форми AlphaBlend і
AlphaBlendValue. Маніпулюючи з ними в звичайному циклі можна досягти дуже
непоганих результатів. Якщо ви прочитаєте цю статтю, то ваша заставка може
вразити навіть досвідченого користувача. Я не буду пхати в цю статтю матеріал,
викладений в іншій статті, але додам, що якщо ви хочете, що б заставка при
закриття також плавно зникала, то поставте в циклі замість слова to слово
downto та поміняйте місцями початкові і кінцеві значення (100 і 255 у прикладі
статті). p>
Замість
укладення p>
Хочу
сказати, що не потрібно боятися експериментувати, і в цих експерименту
втратити дорогоцінний час, адже саме в подібних експерименту народжуються
приголомшливі результати. До того ж мета цієї статті дати не готові приклади для
використання, а дати їжу для мізків, наштовхнути програміста на цікаві
факти. Уявіть, що ви на уроці хімії: змішуйте приклади, додавайте що
ні будь своє, виправляйте і будьте впевнені, що ви не будете жалкувати про
витрачений час. p>
Список літератури h2>
Для
підготовки даної роботи були використані матеріали з сайту http://www.soch.imperium.by
p>