Delphi World - это проект, являющийся сборником статей и малодокументированных возможностей  по программированию в среде Delphi. Здесь вы найдёте работы по следующим категориям: delphi, delfi, borland, bds, дельфи, делфи, дэльфи, дэлфи, programming, example, программирование, исходные коды, code, исходники, source, sources, сорцы, сорсы, soft, programs, программы, and, how, delphiworld, базы данных, графика, игры, интернет, сети, компоненты, классы, мультимедиа, ос, железо, программа, интерфейс, рабочий стол, синтаксис, технологии, файловая система...
Вылет окна


Лена: А у нас вчера под окнами HЛО висело... Хакер(злобно, не отрываясь от компьютера): -Кто ж его под "окнами" ставит, надо было под LINUX, тагда б не зависло...

Если Вы хотите ввести в изумление пользователя с первых минут его использования Вашего приложения, тогда самый верный способ - заставить окно “вылететь”, а не появиться обычным способом! Сделать это довольно легко, надо только описать два события: OnShow (на появление формы) и OnClose (на закрытие формы)Выглядеть это будет так:


procedure TForm1.FormShow(Sender: TObject);
var
  RectSmall, RectNormal: TRect;
begin
  RectSmall := Rect(0, 0, 0, 0);
  RectNormal := Form1.BoundsRect;
  DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RectSmall, RectNormal);
end;

procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction);
var
  RectSmall, RectNormal: TRect;
begin
  RectSmall := Rect(0, 0, 0, 0);
  RectNormal := Form1.BoundsRect;
  DrawAnimatedRects(GetDesktopWindow, IDANI_CAPTION, RectNormal, RectSmall);
end;

Мы объявляем две переменные класса TRect (От англ. Rectangle - прямоугольник ). Называем их, например RectSmall и RectNormal. Для RectSmall мы задаём нули: (0,0,0,0), тем самым указав начало координат, т.е. левый верхний угол экрана. В RectNormal помещаем рамку формы с помощью функции BoundsRect. Функция DrawAnimatedRects создаёт перетекание начальной рамки в конечную. В событии OnShow мы из маленькой рамки делаем большую – окно вылетает, а в событии OnClose большая рамка перетекает в маленькую – окно улетает!

Проект Delphi World © Выпуск 2002 - 2004
Автор проекта: ___Nikolay