Вверх ↑
Этот топик читают: Гость
Ответов: 875
Рейтинг: 322
#1: 2010-01-17 13:04:33 ЛС | профиль | цитата
Не могу сообразить. Каким образом можно отключить перемещение объекта при достижении каких либо значений при нажатой ЛКМ.
code_16549.txt
карма: 1

0
файлы: 1code_16549.txt [1.3KB] [136]
Ответов: 8961
Рейтинг: 824
#2: 2010-01-17 14:41:13 ЛС | профиль | цитата
kamakama,
hiMoveWindow писал(а):
procedure THIMoveWindow._work_doMove;
var wnd:HWND;
begin
wnd := ReadInteger(_Data,_data_Handle,0);
ReleaseCapture;
SendMessage(wnd,WM_SYSCOMMAND, $F012, 0);
end;
не будет останавливаться, пока кнопка нажата только силовым методом code_16551.txt
карма: 19

0
файлы: 1code_16551.txt [1.5KB] [136]
Ответов: 875
Рейтинг: 322
#3: 2010-01-17 15:07:55 ЛС | профиль | цитата
Леонид, спасибо, но так уже пробовал, не совсем то что требуется, бум думать.
карма: 1

0
Ответов: 8961
Рейтинг: 824
#4: 2010-01-17 16:01:32 ЛС | профиль | цитата
kamakama,
Анекдот писал(а):
что тут думать, прыгать надо
отказаться от MoveWindow и двигать принудительно используя

Add(MouseEvent,9225196,210,357)
{
Point(Handle)
}

------------ Дoбавленo в 17.27:
kamakama, вот что получилось

Add(MainForm,2953706,700,70)
{
Position=1
Point(Width)
Point(Height)
Point(onResize)
link(onCreate,5352639:doWork1,[(744,90)])
link(onResize,5352639:doWork2,[])
}
Add(Image,5695478,294,182)
{
Left=130
Top=90
Height=55
Color=-16777215
Point(Handle)
Point(onMouseMove)
Point(Width)
Point(Height)
Point(Left)
Point(Top)
Point(doLeft)
Point(doTop)
link(onMouseMove,14537464:doEvent1,[])
}
Add(MouseEvent,4547124,413,77)
{
Point(Handle)
}
Add(DoData,8375377,427,266)
{
link(onEventData,6977578:doCompare,[])
link(Data,4547124:Handle,[])
}
Add(If_else,6363282,385,266)
{
Op2=Integer(0)
link(onTrue,8375377:doData,[])
}
Add(If_else,6977578,469,266)
{
link(onTrue,11751806:doEvent1,[])
link(Op2,8868397:Var2,[])
}
Add(ChangeMon,11933952,385,147)
{
link(onData,15447329:doValue,[])
}
Add(Hub,14537464,357,189)
{
link(onEvent1,11933952:doData,[(378,195)(378,153)])
link(onEvent2,6363282:doCompare,[(378,202)(378,272)])
}
Add(Memory,15447329,441,147)
{
Point(Data)
link(onData,6336916:doValue,[])
link(Data,5695478:Left,[(447,134)(351,134)(351,224)(328,224)])
}
Add(Memory,6336916,490,147)
{
Point(Data)
link(onData,13633540:doValue,[])
link(Data,5695478:Top,[(496,127)(346,127)(346,219)(335,219)])
}
Add(Memory,13633540,581,147)
{
Point(Data)
link(onData,1544504:doValue,[])
link(Data,14632256:Var2,[(587,145)(580,145)])
}
Add(Memory,1544504,623,147)
{
Point(Data)
link(Data,7368246:Var2,[])
}
Add(MathParse,625748,560,266)
{
DataCount=3
MathStr="%1 + %2 - %3"
ResultType=0
link(onResult,15839296:doCompare,[])
link(X1,15447329:Value,[(566,222)(447,222)])
link(X2,14632256:Var1,[(573,138)])
link(X3,13633540:Value,[(580,222)(587,222)])
}
Add(GetDataEx,14632256,574,133)
{
link(Data,4547124:MouseX,[(580,122)(419,122)])
}
Add(PosWindow,10349927,791,266)
{
link(Handle,8868397:Var3,[(797,250)])
}
Add(GetDataEx,8868397,476,245)
{
link(Data,5695478:Handle,[(482,238)(307,238)])
}
Add(If_else,15839296,602,266)
{
Type=4
Op2=Integer(0)
link(onTrue,4842074:doValue,[])
link(onFalse,4842074:doClear,[])
}
Add(Memory,4842074,644,266)
{
Default=Integer(0)
link(onData,7412161:doCompare,[])
}
Add(If_else,7412161,693,266)
{
Type=1
link(onTrue,2576269:doWork2,[])
link(onFalse,3492806:doData,[])
link(Op2,7699877:Var2,[])
}
Add(HubEx,5352639,740,91)
{
Angle=1
link(onEvent,8895521:doCalc,[(744,183)(685,183)(685,209)])
}
Add(DoData,3492806,735,273)
{
link(onEventData,2576269:doWork3,[(774,279)])
link(Data,7699877:Var3,[(741,257)])
}
Add(HubEx,2576269,770,266)
{
link(onEvent,10349927:doLeft,[])
}
Add(GetDataEx,7699877,700,252)
{
link(Data,8895521:Result,[])
}
Add(MathParse,8895521,700,203)
{
MathStr="%1 - %2 - 8"
ResultType=0
link(onResult,2768826:doCalc,[])
link(X1,2953706:Width,[])
link(X2,5695478:Width,[(713,195)(402,195)(402,233)(314,233)])
}
Add(MathParse,1948830,532,336)
{
DataCount=3
MathStr="%1 + %2 - %3"
ResultType=0
link(onResult,16512883:doCompare,[])
link(X1,6336916:Value,[(538,237)(496,237)])
link(X2,7368246:Var1,[(545,131)])
link(X3,1544504:Value,[(552,237)(629,237)])
}
Add(If_else,16512883,574,336)
{
Type=4
Op2=Integer(0)
link(onTrue,3655567:doValue,[])
link(onFalse,3655567:doClear,[])
}
Add(Memory,3655567,616,336)
{
Default=Integer(0)
link(onData,1833440:doCompare,[])
}
Add(If_else,1833440,658,336)
{
Type=1
link(onTrue,7413900:doWork2,[])
link(onFalse,12037708:doData,[])
link(Op2,6129790:Var1,[(671,320)])
}
Add(DoData,12037708,700,343)
{
link(onEventData,7413900:doWork3,[(739,349)])
link(Data,6129790:Var3,[(706,320)])
}
Add(HubEx,7413900,735,336)
{
link(onEvent,10349927:doTop,[(781,342)(781,279)])
}
Add(GetDataEx,6129790,679,315)
{
link(Data,2768826:Result,[(685,243)(748,243)])
}
Add(MathParse,2768826,742,203)
{
MathStr="%1 - %2 - 26"
ResultType=0
link(X1,2953706:Height,[(748,186)(713,186)])
link(X2,5695478:Height,[(755,190)(397,190)(397,229)(321,229)])
}
Add(Hub,11751806,511,266)
{
link(onEvent1,625748:doCalc,[])
link(onEvent2,1948830:doCalc,[(529,279)(529,342)])
}
Add(GetDataEx,7368246,623,126)
{
link(Data,4547124:MouseY,[(629,117)(426,117)])
}

карма: 19

0
4
Сообщение
...
Прикрепленные файлы
(файлы не залиты)