Вниз
Скачать: CL | DM;

КАК В ДЕЛЬФИ СДЕЛАТЬ ГЛАВНУЮ ФОРМУ КРУГЛОЙ   Найти похожие ветки 

 
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;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.012 c
14-91056
panov
2002-02-12 09:05
2002.03.28
Хорошо жить!


7-91083
volph
2001-12-26 15:37
2002.03.28
передать параметры уже запущенной программе


6-91016
Donal
2001-10-19 12:11
2002.03.28
UDP через SOCKS5


1-90979
Demon ltd
2002-03-14 23:09
2002.03.28
Разница между датами


1-90963
saff
2002-03-15 00:28
2002.03.28
DBGrid




   Наверх