Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Вниз

КАК В ДЕЛЬФИ СДЕЛАТЬ ГЛАВНУЮ ФОРМУ КРУГЛОЙ 


zep   (2002-03-14 23:42) [0]

ПЛИЗЗ ПОДСКАЖИТЕ ХТО НИБУДЬ КАК В ПРОГРАММЕ СДЕЛАТЬ ГЛАВНУЮ ФОРМУ КРУГЛОЙ



Malder   (2002-03-15 01:41) [1]

Хм. Ну если ты разберешься в коде и тебе это поможет, то пожалуйста :

Надо обьявить переменную (глобальную) rgn : HRGN;

Процедура перерисовки.
procedure Tform1.perefig(a:integer;b:integer);
begin
rgn := CreateEllipticRgn(a, b, Width, Height);
SetWindowRgn(Handle, rgn, True);
end;


В конце не забудь уничтожить:

procedure TForm1.FormDestroy(Sender: TObject);
begin
DeleteObject(rgn);
end;


Правда будет рисоваться эллипс. Но программу легко переделать, да и вообще круг - частный случай эллипса =)

Да, вот еще. При таком подходе у формы не будет загаловка, соответственно ее нельзя будет закрыть (только по Alt+F4) и перетащить. Что перетаскивать можно было ухватившись за любой участок формы, пишем:

procedure TForm1.WMNCHitTest(var Message : TWMNCHitTest);
begin
if PtInRegion(rgn, Message.XPos, Message.YPos) then
Message.Result := HTCAPTION
else
Message.Result := HTNOWHERE;
end;




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.03.28;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.71 MB
Время: 0.016 c
1-91003           Novichok2             2002-03-15 11:46  2002.03.28  
фильтрация в SQL


1-90954           ДмитрийВ              2002-03-14 18:28  2002.03.28  
Как передать двухмерный массив в процедуру?


3-90751           Fox2001               2002-03-01 12:59  2002.03.28  
Blob&Jpeg


1-90903           Kostya                2002-03-16 16:31  2002.03.28  
Получение кода возврата из внешней программы.


1-90855           HELP!!!!!!!!!!!!!!!   2002-03-16 09:18  2002.03.28  
ПОМОЩЬ!!