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

Ограничение границ при перетаскивании объекта   Найти похожие ветки 

 
Supreme   (2002-11-29 17:27) [0]

На событии OnMouseDown формы Form1 я пишу:

const
SC_DragMove = $F012;
{ a magic number }
begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;

А как мне сделать, чтобы нельзя было перемещать форму дальше чем её
позиция будет равна Form1.Left:=0 ???
Т.е. чтобы она перемещалась только вверх-вниз.


 
Supreme   (2002-12-05 23:32) [1]

Ну помогите пожалуйста, неужели так сложно?


 
Supreme   (2002-12-07 15:10) [2]

Народ, вы где? Кто-нить может помочь? Если нет - так и скажите.


 
Supreme   (2002-12-10 17:50) [3]

Аууууу!!!


 
Skier ©   (2002-12-10 17:54) [4]

>Supreme
IMHO, лучше обратиться к сообщениям
WM_MOVE и WM_MOVING


 
Supreme   (2002-12-10 18:44) [5]

Просто мне надо, чтобы форма двигалась только вверх-вниз по экрану, а за бока не заезжала (она по длине на весь экран).


 
не понял   (2002-12-10 18:58) [6]

А, типа просто в OnMouseUp формы не подойдет ?
if Left < 0
then Left:=0;


 
Skier ©   (2002-12-11 10:33) [7]

>Supreme
Ограничение на Left можно сделать примерно так :
(на остальные варианты додумай сам...)

type
TForm1 = class(TForm)
private
procedure WMMoving(var Message : TMessage); message WM_MOVING;
end; //TForm1

//.........

procedure TForm1.WMMoving(var Message: TMessage);
begin
with PRect(Message.LParam)^ do begin
if Left < 0 then begin
Right := Right - Left;
Left := 0;
inherited;
end //if
else inherited
end; //with
end;


 
Supreme   (2002-12-12 17:07) [8]

Спасибо!



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

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



Память: 0.46 MB
Время: 0.012 c
6-74882
Rob
2002-10-28 10:23
2002.12.23
D7 и TClient&Server Socket


4-75028
bytebutcher
2002-11-06 23:51
2002.12.23
Как узнать частоту обновления для текущего видеорежима?


1-74716
Armageddon
2002-12-10 22:22
2002.12.23
К- ричные числа.


14-74997
Yury
2002-12-04 11:54
2002.12.23
PDF file


3-74543
Shved
2002-12-02 13:12
2002.12.23
Поле




   Наверх