Навигация
Главная
Поиск
Форум
FAQ's
Ссылки
Карта сайта
Чат программистов

Статьи
-Delphi
-C/C++
-Turbo Pascal
-Assembler
-Java/JS
-PHP
-Perl
-DHTML
-Prolog
-GPSS
-Сайтостроительство
-CMS: PHP Fusion
-Инвестирование

Файлы
-Для программистов
-Компонеты для Delphi
-Исходники на Delphi
-Исходники на C/C++
-Книги по Delphi
-Книги по С/С++
-Книги по JAVA/JS
-Книги по Basic/VB/.NET
-Книги по PHP/MySQL
-Книги по Assembler
-PHP Fusion MOD'ы
-by Kest
Professional Download System
Реклама
Услуги

Автоматическое добавление статей на сайты на Wordpress, Joomla, DLE
Заказать продвижение сайта
Программа для рисования блок-схем
Инженерный калькулятор онлайн
Таблица сложения онлайн
Популярные статьи
OpenGL и Delphi... 65535
Форум на вашем ... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Содержание сайт... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Создание отчето... 63898
Модуль Forms 63632
ТЕХНОЛОГИИ ДОСТ... 60477
Пример работы с... 59845
Имитационное мо... 55944
Реклама
Сейчас на сайте
Гостей: 8
На сайте нет зарегистрированных пользователей

Пользователей: 13,079
новичок: Openair
Новости
Реклама
Выполняем курсовые и лабораторные по разным языкам программирования
Подробнее - курсовые и лабораторные на заказ
Delphi, Turbo Pascal, Assembler, C, C++, C#, Visual Basic, Java, GPSS, Prolog, 3D MAX, Компас 3D
Заказать программу для Windows Mobile, Symbian

Компьютерный магазин на Turbo Pascal (База данных) + Пояснительная записка
База данных студентов на Turbo Pascal (Списки) + Пояснительная записка
База данных междугородних телефонных разговоров на Delphi

Реклама



Подписывайся на YouTube канал о программировании, что бы не пропустить новые видео!

ПОДПИСЫВАЙСЯ на канал о программировании
СОЗДАНИЕ SPLASH-ФОРМ (ЗАСТАВКИ)
Нередко при запуске Windows-приложений перед началом работы
на экране появляется заставка (в англоязычной литературе она называ-
ется Splash screen или splash-форма), содержащая информацию о за-
пускаемом приложении, логотип и некоторые другие сведения (серий-
ный номер продукта, версия и пр.) и показывающая ход выполнения
загрузки. При создании splash-форм используется несколько подходов.
Рассмотрим один из них.
Пример 1. Создадим приложение, в котором
перед появлением главного окна возникает за-
ставка, состоящая из логотипа (картинки).
Файл
Логотип.jpg, содержащий изображение имеет
размеры 256х256 (рис. 1.1).
Изображение с логотипом
Рис. 1.1. Изображение с логотипом
Создадим новый проект командой меню
File/New/Application, и присвоим главной
форме имя fmMain. Сохраним модуль формы
fmMain под именем Main_un.pas, а сам проект
— под именем Main.
Добавим в проект еще одну форму (это окно и будет заставкой) и
присвоим ее свойствам значения согласно табл. 1.1.
Таблица 1.1. Свойства проектируемой splash-формы
Свойства проектируемой splash-формы
Сохраним модуль формы fmSplash— под именем Splash_un.pas.
В каталог с проектом поместим файл Логотип.jpg с изображением,
которое будет являться логотипом программы.
Разместим на форме fmSplash компонент Image категории Additional,
присвоим его свойству Align значение alClient (заполняет
всю форму), свойству Proportional — значение true, свойству
Center — значение true, в свойстве Picture укажем в качестве ото-
бражаемого файла файл Логотип.jpg.
Реализуем динамическое создание сплэш-формы перед созданием
главной формы приложения. Для этого выполним команду меню
Project/Options, в диалоговом окне Project Options выберем катего-
рию параметров Forms, переместим форму fmSplash в список
Available forms и нажмем кнопку ОК (этим действием мы переместим
форму fmSplash из списка автоматически создаваемых форм в список
доступных форм). Далее внесем изменения в содержимое файла про-
екта. Для этого выполним команду меню Project/View Source и
добавим одну строку (добавленная строка выделена жирно в листинге)
перед оператором создания главной формы:
program Main;
uses
Forms,
Main_un in 'Main_un.pas' {fmMain},
Splash_un in 'Splash_un.pas' {fmSplash};
{$R *.res}
begin
Application.Initialize;
fmSplash := TfmSplash.Create(nil);
Application.CreateForm(TfmMain, fmMain);
Application.Run;
end.



Суть этой корректировки заключается в том, что автоматически
загружаются в оперативную память только те формы, которые созда-
ются в файле проекта с помощью метода Application.CreateForm.
Таким образом, хотя сплэш-форма и создается в файле проекта первой,
она не будет распознана как главная форма приложения, поскольку
для ее создания используется метод ТForm.Create.
Добавим в модуль Main_un ссылку на модуль Splash_un (можно
воспользоваться меню File/Use unit):
implementation
uses Splash_un;
Для того, чтобы сплэш-форма отображалась в момент создания
главной формы, создадим обработчик события fmMain.OnCreate:
procedure TfmMain.FormCreate(Sender: TObject);
begin
fmSplash.Show; //окно отображается немодальным
fmSplash.Repaint; //метод, заставляющий осуществить
//перерисовку формы
Sleep(5000); //задержка заставки на 5 сек
fmSplash.Hide; //метод, делающий форму невидимой
//можно было fmSplash.Close
fmSplash.Free; //освобождение памяти
end;



Автор: Соколова Ю.С.





Опубликовал Kest December 10 2009 15:53:45 · 6 Комментариев · 19833 Прочтений · Для печати

• Не нашли ответ на свой вопрос? Тогда задайте вопрос в комментариях или на форуме! •


Комментарии
Андрей June 10 2010 22:28:01
Большое спасибо! Помогло! smiley
Diamond00744 June 27 2010 21:47:17
Спасибо!
Александр April 10 2011 23:21:49
Спасибо очень помогло! smiley
Саша April 02 2015 12:13:52
спасибоsmileysmiley
Айгерим June 02 2015 18:02:04
Большое спасибо за подробный хелп!
Владимир Алкаш February 29 2016 08:29:08
Спасибо большое ) легкий хороший способ )
u94;Создаем вторую форму , настраиваем вид
u94; в Project- View Source вставляем form2:=Tform2.create(nil);
u94; File-Use Unit - Unti2(вторая форма)
u94; в FormCreate главной формы прописываем отображение логотипа
Добавить комментарий
Имя:



smiley smiley smiley smiley smiley smiley smiley smiley smiley
Запретить смайлики в комментариях

Введите проверочный код:* =
Рейтинги
Рейтинг доступен только для пользователей.

Пожалуйста, залогиньтесь или зарегистрируйтесь для голосования.

Нет данных для оценки.
Гость
Имя

Пароль



Вы не зарегистрированны?
Нажмите здесь для регистрации.

Забыли пароль?
Запросите новый здесь.
Поделиться ссылкой
Фолловь меня в Твиттере! • Смотрите канал о путешествияхКак приготовить мидии в тайланде?
Загрузки
Новые загрузки
iChat v.7.0 Final...
iComm v.6.1 - выв...
Visual Studio 200...
CodeGear RAD Stud...
Шаблон для новост...

Случайные загрузки
Работа с картотеками
Размещение элемен...
Х. М. Дейтел, П. ...
Х. М. Дейтел, П. ...
Алгоритм DES шифр...
Графика в проекта...
Dreamsoft Progres...
Assistant
DiskInfo
PHP: обучение на ...
JanReplace
Midi
TrayComp
DFileDeleter
Основы Delphi
Профессиональное ...
DirHTMLReportBuil...
WordReport
Удаление своего EXE
Animation (Пример...

Топ загрузок
Приложение Клие... 100449
Delphi 7 Enterp... 85813
Converter AMR<-... 20067
GPSS World Stud... 12518
Borland C++Buil... 11575
Borland Delphi ... 8504
Turbo Pascal fo... 7023
Visual Studio 2... 4989
Калькулятор [Ис... 4739
FreeSMS v1.3.1 3536
Случайные статьи
Топовые игровые ав...
Шрифт, свойства и ...
Перечислимый тип в...
Что такое Internet...
Глонасс установка
Дизайн сайта
У истоков трафа ча...
14.6. Задачи
Существуют три реж...
Документы консорци...
Глава 9. Обратн...
Событие OnDragOver
11.5. Задачи
Нахождение последн...
Работа с объектом ...
Последний вариант ...
Спам-фильтр
Межмодульное взаим...
Прожигатетели врем...
Запрос дерева со С...
консоли Active Dir...
Агрегированные кон...
Определить взаимно...
Странные эффекты
Использование опре...
Статистика



Друзья сайта
Программы, игры


Полезно
В какую объединенную сеть входит классовая сеть? Суммирование маршрутов Занимают ли таблицы память маршрутизатора?