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

Изменение размера "липких" окон   Найти похожие ветки 

← →
superedward   (2004-07-21 13:22) [0]

Есть ФАК по липких окошкам. Оч. хорошо. Они прекрасно лепятся. Однако возникает неприятный глюк при изменении размеров липкого окна: размер начинает меняться с другой, неперетаскиваемой стороны формы.
Я просто уже очень устал искать лекарство, можа кто делал нечто подобное?


← →
VMcL ©   (2004-07-21 14:05) [1]

Телепаты на другом форуме.


← →
Gero ©   (2004-07-21 14:07) [2]

А че это они липкие? Медом что ли намазаны?


← →
pasha_golub ©   (2004-07-21 14:18) [3]

Код давайте, уважаемый


← →
clickmaker ©   (2004-07-21 14:24) [4]


> Они прекрасно лепятся

из пластилина ?


← →
superedward   (2004-07-22 07:09) [5]

Липкие окна - окна, которые при перемещении "прикрепляются" к краям десктопа (как WinAmp, например)

обрабатываю сообщение WM_WINDOWPOSCHANGING:
procedure TWindowCustom.WMWindowPosChanging(var Msg: TWMWINDOWPOSCHANGING);
{процедура прилепления дочерних окон к краям десктопа}
begin
if WindowState=wsMaximized then begin
 inherited;
 exit;
end;
if(Abs(Msg.WindowPos^.Y-DesktopRect.Top)<WindowGlueConst)then begin//Up
   Msg.WindowPos^.Y:=DesktopRect.Top;
end;

if(Abs(Msg.WindowPos^.Y-(DesktopRect.Bottom-Msg.WindowPos^.CY))<WindowGlueConst)then begin//Down
   Msg.WindowPos^.Y:=DesktopRect.Bottom-Height;
end;

if(Abs(Msg.WindowPos^.X-DesktopRect.Left)<WindowGlueConst)then begin//Left
Msg.WindowPos^.X:=DesktopRect.Left;
  end;

if(Abs(Msg.WindowPos^.X-(DesktopRect.Right-Width))<WindowGlueConst)then begin//Right
   Msg.WindowPos^.X:=DesktopRect.Right-Msg.WindowPos^.CX;//Width;
end;
end;



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

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



Память: 0.46 MB
Время: 0.02 c
1-1090504562
RedLord
2004-07-22 17:56
2004.08.08
оптимизация на быстродействие


1-1090487365
Anisa
2004-07-22 13:09
2004.08.08
Application.Terminate


1-1090424132
limon_
2004-07-21 19:35
2004.08.08
Servers


14-1090352699
RedLord
2004-07-20 23:44
2004.08.08
инфа по програмированию DirectX


6-1086534680
lena19
2004-06-06 19:11
2004.08.08
на что открыт доступ на текущем компе (где прога запущена)




   Наверх