powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перемещение панели по горизонтали в Run-Time
2 сообщений из 2, страница 1 из 1
Перемещение панели по горизонтали в Run-Time
    #33909721
___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);
}

Перемещается по всем направлениям.
Как сделать сабж?
...
Рейтинг: 0 / 0
Перемещение панели по горизонтали в Run-Time
    #33912664
Gr4ve
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
___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).

Слегка наворочено, но должно работать.
...
Рейтинг: 0 / 0
2 сообщений из 2, страница 1 из 1
Форумы / C++ [игнор отключен] [закрыт для гостей] / Перемещение панели по горизонтали в Run-Time
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]