Недавно добавленные исходники

•  Animation Loaders  739

•  DeLiKaTeS Tetris (Тетрис)  5 730

•  TDictionary Custom Sort  7 687

•  Fast Watermark Sources  7 373

•  3D Designer  10 586

•  Sik Screen Capture  7 897

•  Patch Maker  8 125

•  Айболит (remote control)  8 178

•  ListBox Drag & Drop  6 973

•  Доска для игры Реверси  100 246

•  Графические эффекты  8 255

•  Рисование по маске  7 635

•  Перетаскивание изображений  6 234

•  Canvas Drawing  6 603

•  Рисование Луны  6 532

•  Поворот изображения  5 698

•  Рисование стержней  4 626

•  Paint on Shape  3 330

•  Генератор кроссвордов  4 308

•  Головоломка Paletto  3 455

•  Теорема Монжа об окружностях  4 272

•  Пазл Numbrix  2 769

•  Заборы и коммивояжеры  3 680

•  Игра HIP  2 484

•  Игра Go (Го)  2 471

•  Симулятор лифта  2 871

•  Программа укладки плитки  2 309

•  Генератор лабиринта  3 034

•  Проверка числового ввода  2 535

•  HEX View  2 945

 
скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Delphi Sources

Вылет окна




Лена: А у нас вчера под окнами 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 большая рамка перетекает в маленькую – окно улетает!





Похожие по теме исходники

Посторонние окна WinAPI




Copyright © 2004-2026 "Delphi Sources" by «SiteAnalyzer». Delphi World FAQ

Группа ВКонтакте