Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Как создать окно произвольной формы?


tga ©   (2002-11-11 13:59:00) 

НЕ раз видел круглые окошки, да и не только круглые. Подскажите где взять программу по созданию окон нестандартной формы. Одну такую я видел в действии - ей подаёшь файл с картинокй - а она создают полигон и может генирить файл формы для Delphi.

Заранее благодарен.


nick_vstu   (2002-11-14 10:53:00) [1]


>
> FormRgn:=CreateRoundRectRgn(0,0,380,260,50,50);
> ElR:=CreateRectRgn(90,50,290,210);
</I

var FormRgn,Elr:HRGN;
так, на всякий случай


pasha676   (2002-11-12 16:05:00) [2]

Есть стандартные API функции задающие форму окна. Их несколько. Пишется все без всяких компонент, примерно так
на креат формы

FormRgn:=CreateRoundRectRgn(0,0,380,260,50,50);
ElR:=CreateRectRgn(90,50,290,210);
CombineRgn(FormRgn,FormRgn,ElR,RGN_DIFF);
SetWindowRgn(Form1.Handle,FormRgn,True);

То есть создаються разные регионы (есть круги, квадраты, многоугольники - посмотри хельп), потом комбинируются, потом устанавливается регион (эта фигура) на форму. Усе. Компоненты нужно качать когда у тебя совсем запущенный случай (форма повторяет контуры Ивана Грозного убивающего своего сына :)).


VVVaaa   (2002-11-12 11:35:00) [3]

Посмотри у Torry, я сам от туда скачал много прог по нестандартным окнам


DimaK   (2002-11-11 22:48:00) [4]

Поищи в инете библиотеку FormRgn. Версия от 21.06.99 она как раз
предназначена для создания окон непрямоугольной формы. Вещь сильная, сам работаю, да и найти можно без проблем.


MBo   (2002-11-11 14:21:00) [5]

Чтобы создать кривое окно, надо создать регион нужной формы и сделать SetWindowRgn
delphi.vitpc.com
пакет FormRgn А.Григорьева


Наверх

Титульная страница Поиск, карта сайта Написать письмо