Форум — Ответы     (  К темам )
 ?  Raven: Каким образом можно изменить форму главного окна (Form) (27-04-2003 11:22:59)
Каким образом можно изменить форму главного окна (Form).
Например, если я хочу поменять skin в своей проге, или придать ей более "экзотический" вид. Каким образом можно изменить прямоугольную форму окна в своей проге.

Заранее спасибо!!!
 Павел (27-04-2003 15:41:04)
Посмотрите в поиске по форуму, уже были примеры непрямоугольных форм.

А "экзотику" можно сделать, например так:

Бросьте на форму Shape, придайте любой вид (квадрат,круг,эллипс) и размер,
установите свойство Brush->Color = clRed;

// и по нажатию кнопки — делаем его прозрачным.
void __fastcall TForm1::Button1Click(TObject *Sender)
{
Form1->TransparentColorValue = clRed;
Form1->TransparentColor = true;
}

Также смотрите свойство формы AlphaBlend и AlphaBlendValue

Однако любая экзотика требует ресурсов у системы и
ухудшается интерфейс программы с пользователем
(за счет нестандартного интерфейса, непривычного пользователю Windows)

Это все красиво в мультимедийных программах и очень неудобно в стандартных
(складских, бухгалтерских и т.д.)
 Георгий (27-04-2003 21:27:26)
а также хорошая функция setWindowRgn
 Alexander (28-04-2003 15:33:20)
Учтите, господа, что при перетаскивании окна нестандартной формы за заголовок будет отображаться верхняя часть (заголовок) обрамляющего прямоугольника.
Надо избавляться от заголовка, чтобы такого не было.