Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.03.28;
Скачать: 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 вся ветка

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

Наверх




Память: 0.46 MB
Время: 0.029 c
1-90899
SergeyDon
2002-03-18 10:58
2002.03.28
Проблема с DLL и MDI.


1-90816
Ольга
2002-03-13 13:33
2002.03.28
pascal


4-91106
MrAngel
2002-01-21 12:06
2002.03.28
Использование функции GetDesktopWnd


1-90989
Aleksandr
2002-03-15 12:11
2002.03.28
Как программу сделать Service для w2k?


3-90769
volodya_
2002-02-27 15:30
2002.03.28
Сортировка в SQL запросах