Создаём формы любой сложности

Опубиковано: 11.01.2009 г., автор: , просмотров: 172453

Недавно бродя по просторам интернета наткнулся на очень интересную программу. Все дело в том что программа позволяет с помощью встроенного визуального редактора создавать формы практически любой сложности (круг, ёлочка, треугольник, звезда), а после чего генерировать код, для вставки его в ваше Delphi приложение. Например, хочу я что бы Форма в моём delphi приложении была не квадратная а овальная. Раньше бы мне пришлось писать все это ручками, но с появлением этой замечательной программы все стало намного проще.

  1. Открываем программу, рисуем нужную нам форму
  2. Жмем на кнопку преобразовать, выбираем путь и название текстового файла для сохранения в нем кода
  3. Вставляем полученный код в свою программу!
  4. Все.

delphi программа для создания форм

Теперь немного поясню, как вставить полученный код в свою программу. Рассказывать буду на собственном примере. Итак, в текстовом файле у меня получился вот такой код:

X := 211
Y := 248
procedure CreateWindowsRegions(const X, Y : Integer; const RegionHandle : THandle);
var
PointsArray : Array[0..4] of TPoint;
FirstRegion, SecondRegion, CombineRegion : THandle;
begin
PointsArray[0] := Point(0 + X, 0 + Y);
PointsArray[1] := Point(0 + X, 130 + Y);
PointsArray[2] := Point(200 + X, 130 + Y);
PointsArray[3] := Point(110 + X, 70 + Y);
PointsArray[4] := Point(200 + X, 0 + Y);
FirstRegion := CreatePolygonRGN(PointsArray, 5, Winding);
CombineRegion := FirstRegion;
SetWindowRGN(RegionHandle, CombineRegion, true);
end;

Далее в Delphi я создал новый проект и после ключевого слова public написал:
procedure CreateWindowsRegions(const X, Y : Integer; const RegionHandle : THandle); - т.е. название процедуры и её параметры.

Нажимаю CTRL+SHIFT+C
Delphi сгенерировал шаблон для этой процедуры. Ну а дальше все просто, я добавил в шаблон недостающие строчки из полученного кода.
Важно: первые две строчки, у меня этоX := 211 иY := 248 добавлять не надо!

Далее я создал обработчик событий OnCreate на форме и между begin ... end прописал вот такой код:

CreateWindowsRegions(211, 248, Handle); - Где CreateWindowsRegions - имя процедуры, 211- параметр X (первая строка), 248 - параметр Y (вторая строка)

А вот что получилось у меня после запуска:

Delphi форма

P.S. Рисовать такие формы в программе, тоже очень просто: кликаем один раз по значку и начинаем рисовать используя правую кнопку мышки.

До встречи DelphiExpert.ru !!!

Скачать программу Регионы 7 - проектирование Delphi форм



Похожие материалы

Последние из рубрики

Саша 07 Янв 2013 в 00:00 #
Круто)..классная прога!))
Гость 13 Сен 2012 в 00:00 #
Напишите программу, которая вашим посетителям будет помогать изрекаться на русском языке
Bezuma 10 Сен 2012 в 00:00 #
Спасибо, забавная вещь. Только, на сколько я понял, она не создаёт форму заданной фигуры, а отображает часть её. Я вызывал ёлку кнопкой с первого юнита и впервый раз не понял что за "хрень" появилась. Оказалось 2 юнит слишком мал - расширил. Потом, взглянув на творение, не заметил кнопки со второго юнита. Когда передвинул её на середину, то, соответственно, отобразилась.
Саша 17 Июл 2012 в 00:00 #
Программа хорошая конечно, но будет лучше если бы исходник оставили -:)
Dмитрий 10 Июн 2012 в 00:00 #
супер!

ОтменитьДобавить комментарий