Навигация
Главная
Поиск
Форум
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
21 ошибка прогр... 65535
HACK F.A.Q 65535
Бип из системно... 65535
Гостевая книга ... 65535
Invision Power ... 65535
Пример работы с... 65535
Содержание сайт... 65535
ТЕХНОЛОГИИ ДОСТ... 65535
Организация зап... 65535
Вызов хранимых ... 65535
Создание отчето... 65535
Имитационное мо... 65535
Программируемая... 65535
Эмулятор микроп... 65535
Подключение Mic... 65535
Создание потоко... 65535
Приложение «Про... 65535
Оператор выбора... 65535
Реклама
Сейчас на сайте
Гостей: 16
На сайте нет зарегистрированных пользователей

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

Моделирование работы класса персональных компьютеров на GPSS + Отчет + Б...
Моделирование вычислительного центра на GPSS + Отчет + Блок схема
База данных студентов на Delphi + Microsoft SQL Server

СОЗДАНИЕ 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 12:53:45 · 6 Комментариев · 24333 Прочтений · Для печати

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


Комментарии
Андрей June 10 2010 18:28:01
Большое спасибо! Помогло! smiley
Diamond00744 June 27 2010 17:47:17
Спасибо!
Александр April 10 2011 19:21:49
Спасибо очень помогло! smiley
Саша April 02 2015 09:13:52
спасибоsmileysmiley
Айгерим June 02 2015 15:02:04
Большое спасибо за подробный хелп!
Владимир Алкаш February 29 2016 05: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...
Шаблон для новост...

Случайные загрузки
Delphi Быстрый Ст...
Просмотр коммент...
C# в кратком изло...
Заставка. Изображ...
3d Tank [Исходник...
Geo-Whois
Расширенный загру...
IpEditAdress
Алгоритм DES шифр...
Род Стивенс. Delp...
Генетический алго...
Blib [Исходник на...
Tetris 2002
ComboBox97
Bitmap [для кнопок]
Секреты программи...
Delphi 6. Учебный...
C++ Builder 6 СПР...
Illusion
С/C++ Программиро...

Топ загрузок
Приложение Клие... 100793
Delphi 7 Enterp... 98016
Converter AMR<-... 20298
GPSS World Stud... 17059
Borland C++Buil... 14238
Borland Delphi ... 10373
Turbo Pascal fo... 7390
Калькулятор [Ис... 6080
Visual Studio 2... 5228
Microsoft SQL S... 3674
Случайные статьи
Настраиваемые инте...
Клонирование устро...
Средний и наихудши...
на 90%
Эскорт-модели: сам...
Цель преподавания ...
В программе предпо...
приведен профиль т...
":=" expected
от его имени
Эконом мебель
СС/РР и Web-ориент...
Онлайн-игра на офи...
Размеры динамическ...
Как узнать какой D...
Рабочая площадка р...
Играть онлайн в иг...
Линии выноски для ...
Фреймы
Управление маркерами
Абстрактные типы д...
Водительское удост...
Опыты с силой прит...
Поиск файлов и пап...
Окно редактора кол...
Статистика



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


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