
Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
10.08.2006, 09:49
|
|||
|---|---|---|---|
|
|||
Перемещение панели по горизонтали в Run-Time |
|||
|
#18+
Нужно перемещать мышью панель по горизонтели но не по вертикали. Нашел такой пример: void __fastcall TForm1::Panel1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { int SC_DRAGMOVE = 0xF012; ReleaseCapture(); Panel1->Perform(WM_SYSCOMMAND,SC_DRAGMOVE, 0); } Перемещается по всем направлениям. Как сделать сабж? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
11.08.2006, 11:37
|
|||
|---|---|---|---|
Перемещение панели по горизонтали в Run-Time |
|||
|
#18+
___neznayka__Нужно перемещать мышью панель по горизонтели но не по вертикали. Нашел такой пример: void __fastcall TForm1::Panel1MouseDown(TObject *Sender, TMouseButton Button, TShiftState Shift, int X, int Y) { int SC_DRAGMOVE = 0xF012; ReleaseCapture(); Panel1->Perform(WM_SYSCOMMAND,SC_DRAGMOVE, 0); } Перемещается по всем направлениям. Как сделать сабж? Думаю, нужно "двигать" панель не через Perform, а вручную, изменяя ее координаты. Попробуй поиграться с событиями OnMouseDown (установить флаг, что пользователь "зажал" мышью панель), OnMouseMove (если флаг установлен, меняем координаты панели в зависимости от координат курсора мышки), OnMouseUp (сбрасываем флаг). Координаты курсора над панелью переводим в глобальные координаты рабочего стола, после чего их переводим в координаты внутри формы, в которой находится панель, двигаем саму панель(ScreenToClient/ClientToScreen). Слегка наворочено, но должно работать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&mobile=1&tid=2030698]: |
0ms |
get settings: |
10ms |
get forum list: |
20ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
152ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
34ms |
get tp. blocked users: |
2ms |
| others: | 244ms |
| total: | 480ms |

| 0 / 0 |
