Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.17;
Скачать: CL | DM;

Вниз

Вопрос о форме ( окне программы )   Найти похожие ветки 

 
SinnerPro ©   (2002-10-07 12:11) [0]

Помогите. Кто знает как сделать округлыми края формы ( окна программы ), а то так не очень красиво. (У меня Delphi7)


 
sask ©   (2002-10-07 12:28) [1]

Нашел ссылку - там все просто и ясно:
http://zyxel0.narod.ru/My_Progs/Kruv_form.rar


 
delta ©   (2002-10-07 12:31) [2]

Когдато нашол ету статью, где не помню, мне помогло. Можно создать форму любой формы.
Всё, что нам нужно, это HRGN и дескриптор (handle) элемента управления. SetWindowRgn имеет три параметра: дескриптор окна, которое будем менять, дескритор региона и булевый (boolean) параметр, который указывает - перерисовывать или нет после изменения. Как только у нас есть дескриптор и регион, то можно вызвать SetWindowRgn(Handle, Region, True) и вуаля!

Функция BitmapToRgn есть на исходники.ру поищи

Заметьте, что Вы не должны освобождать регион при помощи DeleteObject, так как после вызова SetWindowRgn владельцем региона становится операционная система.

var
MaskBmp: TBitmap;
begin
MaskBmp := TBitmap.Create;
try
MaskBmp.LoadFromFile("FormShape.bmp");
Height := MaskBmp.Height;
Width := MaskBmp.Width;
// ОС владеет регионом, после вызова SetWindowRgn
SetWindowRgn(Self.Handle, BitmapToRgn(MaskBmp), True);
finally
MaskBmp.Free;
end;
end;



Страницы: 1 вся ветка

Текущий архив: 2002.10.17;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.013 c
1-56072
Shluz
2002-10-08 15:38
2002.10.17
Запрет в мемо


3-56013
Шурик Ш
2002-09-26 16:50
2002.10.17
На какое событие повесить обработчик?


3-56017
RWS
2002-09-25 04:00
2002.10.17
Помогите pls.


3-56005
Dmitry Toropov
2002-09-25 18:23
2002.10.17
ADO + mdb + delete record с помощью DBNavigator = ???


1-56192
margol
2002-10-07 14:41
2002.10.17
Работа с файлами