![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как сделать? [D5, Win95/98, WinME]
[BAD]Angel © (2002-11-18 13:42:00)Уважаемые мастера, подскажите ПЛЗ, можно ли реализовать следующее:
есть форма, которую можно перетаскивать по экрану непосредственно за саму форму, не за заголовок окна.
procedure TForm1.MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
SC_DragMove = $F012;
begin
if ssLeft in Shift then begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;
end;
Как сделать так, чтобы, когда форма касалась одной из своих сторон края экрана, она бы прилипала к ней. (Эффект TaskBar)
Если можно кодом!!!
Буду очень признателен!!!
[BAD]Angel (2002-11-18 14:56:00) [1]с этим есть некоторые трудности... есть ли бругой способ?
Axis_of_Evil (2002-11-18 14:37:00) [2]Навскидку: Form1.Align, если приблизились к краю
(if Form1.Left < 10)
[BAD]Angel (2002-11-18 14:34:00) [3]P.S. Нужен эффект WinAmp"a(прилипание окна к краю экрана)...
[BAD]Angel (2002-11-18 14:18:00) [4]
procedure TForm1.MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
const
SC_DragMove = $F012;
begin
if ssLeft in Shift then begin
ReleaseCapture;
perform(WM_SysCommand, SC_DragMove, 0);
end;
end;
Вот процедура таскания формы за серую область, а мне нужен алгоритм (код) как сделать прилипания формы к краю экрана!!!!
Axis_of_Evil (2002-11-18 14:13:00) [5]Делает то, что при клике по форме(серой поверхности) и попытке
ее таскания как за Caption она таскается.
hc_**** подлежит выяснеиню, просто я не помгю эту константу
(hc_window или чего-то) ну посмотри ты в help.(win32.hlp)
[BAD]Angel (2002-11-18 14:08:00) [6]ну неужели никто не может написать код? :-(
[BAD]Angel (2002-11-18 14:02:00) [7]Axis_of_Evil- а что эта процедура делает?
Axis_of_Evil (2002-11-18 13:53:00) [8]
procedure WMNCHitTest(var msg: TMsg); message WM_NCHitTest;
procedure TForm1.WMNCHitTest(var msg: TMsg);
begin
if Result = ****** then
Result := hc_Caption;
end;
****** - hc_форма, посмотри в help,
вообще помучай hc_*
[BAD]Angel (2002-11-18 13:47:00) [9]и что дальше? конкретнее ПЛЗ! :-)
Skier (2002-11-18 13:45:00) [10]>[BAD]Angel
Лови сообщение WM_MOVING