Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Новые формы

647
23 марта 2003 года
vital
73 / / 22.03.2003
А у меня вот какой вопрос можно-ли
сделать окно приложения кнопки ну и т.п. вещи
нестандартными круглыми например или в виде чего нить
362
24 марта 2003 года
_kolyan
339 / / 03.12.2002
Цитата:
Originally posted by vital
А у меня вот какой вопрос можно-ли
сделать окно приложения кнопки ну и т.п. вещи
нестандартными круглыми например или в виде чего нить



Смотри MSDN или билдеровскую справку по CreateRectRgn, CreateRoundRectRgn, CreatePolygonRgn и SetWindowRgn. Можно сделать окно всяких извращенных форм при помощи комбинации разных областей - CombineRgn

1.6K
24 марта 2003 года
Grom2025
82 / / 20.03.2003
Цитата:
Originally posted by vital
А у меня вот какой вопрос можно-ли
сделать окно приложения кнопки ну и т.п. вещи
нестандартными круглыми например или в виде чего нить

8-)

void __fastcall TForm1::FormCreate(TObject *Sender)

POINT p[9];
HRGN MyRegion;

//Это полигон в котором мы описываем
//область видимости окна
//..рисуется против часовой стрелки
p[0].x =45; p[0].y =0;
p[1].x =0; p[1].y =45;
p[2].x =0; p[2].y =295;
p[3].x =45; p[3].y =335;
p[4].x =495; p[4].y =335;
p[5].x =535; p[5].y =295;
p[6].x =535; p[6].y =45;
p[7].x =495; p[7].y =0;
p[8].x=45; p[8].y=0;

//Вот и почти готово
MyRegion = CreatePolygonRgn(p, 8, ALTERNATE);
//Выводим на экран
SetWindowRgn(Handle, MyRegion, true);
//Опа готовенько

//А это работает только в Винтукее
//Прозрачность!!!
SetWindowLong(Handle, GWL_EXSTYLE,
GetWindowLong(Handle, GWL_STYLE) | WS_EX_LAYERED);
SetLayeredWindowAttributes(Handle, 0,
(255 * 255) /300, LWA_ALPHA);
//Опыты производились в C++Builder 5

C Уважением Grom2025

Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог