Ошибка: Failed to parse the Currency Converter XML document.
$1 893.19


Ошибка: Failed to parse the Currency Converter XML document.
$2 772.29


Ошибка: Failed to parse the Currency Converter XML document.
$10 944.27


Создание заставок для ваших программ

Наверно, каждый программист на Дельфи хоть раз хотел создать к какой-нибудь своей программе заставку. Тому кто умеет работать более чем с одной формой в приложении, будет очень легко это понять. Чтобы не вдаваться в теорию, начнем сразу с практики.

Откройте какое-нибудь свое приложение, к которому вы хотите добавить заставку, или создайте новое (на чистом проще разбираться). Теперь необходимо добавить в наш проект еще одну форму, которая будет заставкой. Для этого нажмите File->New Form и Дельфи создаст вам новую форму. Измените ее размеры как вам хочется. Потом установите свойство Border Style вашей формы в bsNone (у формы не будет заголовка и системных кнопок), установите свойство Visible в false. Свойтсво Position должно быть poScreenCenter — это значит, что форма появится по центру экрана. И чтобы не перепутать эту форму ни с какой другой задайте ей имя Logo .


Настройка формы заставки произведена, теперь необходимо сделать, чтобы по щелчку мышкой по этой форме или после нажатия клавиши или по истечении 5 секунд форма-заставка закрывалась. Для этого установите на форму Timer, его свойству Interval задайте значение 5000 (форма будет закрываться через 5 секунд). В обработчик события OnTimer напишите всего одно слово: Close;


В обработчик события OnClick для формы-заставки напишите тоже самое. Установите свойство формы KeyPreview в true (это делается для того, чтобы при нажатии любой клавиши вначале реагировала форма, а затем тот элемент, который был в фокусе в момент нажатия). А в обработчик события OnKeyPress (для формы-заставки конечно же) опять-таки напишите close;

Форма-заставка готова полностью и теперь необходимо, чтобы она запускалась перед главной формой. Для этого сделайте активной вашу главную форму, перейдите на вкладку Events в Object Inspector«e и выберите событие OnShow. В обработчике этого события надо написать следующее:

logo.showmodal;

Меня иногда спрашивают, чем отличаются процедуры show и showmodal. У них только одно принципиальное различие: если форма открылась методом Showmodal, то пока она не закроется пользователь не сможет взаимодействовать с остальными формами приложения. А если форма была открыта методом Show, то пользователь легко может перейти к любой форме приложения.

Итак, форма-заставка готова. Теперь мы слегка ее усовершенствуем. Добавим такую же штуку, как в формах-заставках Microsoft Office, а именно на форме будет показываться имя пользователя и организация. Для этого разместите на форме-заставке две метки (Label). Первую назовите UserName, а вторую — Organization. Чтобы это сделать мы воспользуемся реестром (тас вообще очень много интересного можно найти). Теперь откройте обработчик события OnCreate для формы-заставки и объявите там переменную R типа TRegistry, а в раздел Uses всей программы добавьте Registry. Теперь нам нужно создать объект R :

R:=TRegistry.Create;
R.RootKey:=HKEY_LOCAL_MACHINE;
R.OpenKey(»SOFTWARE\Microsoft\Windows\CurrentVersion«, False); //именно здесь эта информация хранится

Теперь необходимо прочитать нужные строки из этого раздела реестра и присвоить их соответствующим меткам:

UserName.Caption:=r.readstring(»RegisteredOwner«);
Organization.Caption:=r.readstring(»RegisteredOrganization«);
r.Free; //надо уничтожить этот объект, так как он нам больше не нужен

Таким образом весь этот обработчик должен иметь примерно такой вид:

procedure TLogo.FormCreate(Sender: TObject);
var R:Tregistry;
begin
R:=TRegistry.Create;
R.RootKey:=HKEY_LOCAL_MACHINE;
R.OpenKey(»SOFTWARE\Microsoft\Windows\CurrentVersion«, False);
UserName.Caption:=r.readstring(»RegisteredOwner«);
Organization.Caption:=r.readstring(»RegisteredOrganization');
r.Free;
end;

Теперь ваши программы будут выглядеть более солидно. Но помните, что при создании небольших, вспомогательных программ, объем которых не превышает килобайт 100-150 заставки лучше не использовать.

 

Интересное

Когда плохой дизайн...
Создавать сайты сейчас стало проще: если вы не знаете, как вам оформить определенный элемент дизайна страницы, все что вам нужно сделать, это зайти на двадцать наиболее посещаемых сайтов в...
Подробнее...
Антивирус - религия?
Всё больше людей приобретают компьютеры, теперь даже стыдно, если его у тебя нет. Почти все купившие сразу приобретают модемы и начинают осваивать интернет. Люди в шоке :«Там есть...
Подробнее...
Алгоритмы определения...
Перевод тезисов из статьи Аарона Уолла, посвященной сравнению ведущих поисковых машин англоязычного сектора Интернета — Yahoo!, MSN Search, Google и Ask.
Подробнее...
Внимание! Отказ в...
Описание: Уязвимость позволяет удаленному пользователю вызвать отказ в обслуживании приложения.Уязвимость существует из-за ошибки при обработке пакетов, отправленных на порт 48000 UDP/TCP....
Подробнее...
Оптимизация проекта в Delphi
Здравствуйте, программисты-делфисты. Повидал я не мало многих программ написанных на делфи. Есть хорошие, есть не очень, но их размер меня всегда поражал. 0.6, 1, 5 и даже 10 мегабайт!!! А...
Подробнее...
Откат обновлений драйверов...
Обновляя драйвер, чтобы решить существующие проблемы или улучшить работу устройства, не стоит забывать, что установка нового драйвера может привести к неожиданным результатам или воспрепятствовать...
Подробнее...
Уязвимость в приложении...
Microsoft предупредила пользователей Windows о появлении вируса, поражающего компьютеры через уязвимость в приложении для создания презентаций PowerPoint.При открытии зараженного файла формата РРТ...
Подробнее...
Windows взломали...
Специалист по компьютерной безопасности Адам Бойли (Adam Boileau) из новозеландской компании Immunity может обойти пароль Windows XP за несколько секунд. На персональном сайте он опубликовал...
Подробнее...
Обзор и установка системы...
ВведениеДумаю, в настоящее время никто уже не станет спорить с утверждением, что процесс вхождения Linux в корпоративный мир стал необратимым, а процент установок этой операционной системы на...
Подробнее...
Полезные возможности...
Утилита Windows XP «Восстановление системы» (System Restore) позволяет возвращать последнюю удачную конфигурацию системы в случае возникновения различных проблем. Для этого утилита постоянно...
Подробнее...