Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Вниз

Как мне за имадж перетаскивать форму 


Andrey196   (2001-12-23 20:31) [0]

У меня на всу форму растянут имадж form.borderstyle:=bsNone;
Как мне за имадж перетаскивать форму.

СПАСИБО!!!!!



Al Creator   (2001-12-23 21:51) [1]

Достаточно известен способ перемещения приложения без Caption. Для решения этой технической задачи нужно переопределить обработчик события WM_NCHITTEST для окна следующим образом:
type
TForm1=class(TForm)
....
private
procedure WMNCHITTEST(var M:TWMNCHitTest);message wm_NCHitTest;
...
end;

procedure TForm1.WMNCHITTEST(var M:TWMNCHitTest);message wm_NCHitTest;
begin
(вызов унаследованного обработчика событий)
inherited;
(если событие произошло в клиентской области, )
IF M.Result=htClient then
(то пусть думает, что произошло на Caption)
M.Result:=htCaption;
end;

Недостаток такого окна - не вызываются обработчи событий связанных с мышью....
Всё, что было проделано с формой можно применить и к остальным оконным компонентам. Никто не запрещает переопределять WM_NCHitTEST




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.01.10;
Скачать: [xml.tar.bz2];




Наверх








Память: 0.75 MB
Время: 0.011 c
1-28492           Delphimun             2001-12-21 14:24  2002.01.10  
Как изменить букву на несколько букв вперёд(по алфавиту)?


1-28460           cahek2000             2001-12-21 08:40  2002.01.10  
Как убрать(скрыть) горизонтальный скролбар(прокрутку) у TDBGrid-а?


4-28556           cher_gvf              2001-11-09 17:43  2002.01.10  
Где почитать о потоках и процессах?


3-28433           kd                    2001-12-10 08:03  2002.01.10  
SQL


3-28425           bk                    2001-12-09 16:27  2002.01.10  
Excel I ADO