tmousebutton



Автор Павел задал вопрос в разделе Другие языки и технологии

Вопрос по Делфи и получил лучший ответ

Ответ от Дима[гуру]
Вот твоя ошибка:

Перепроверь строчку
SetCapture(Button1.Handle);
На второй кнопке надо написать SetCapture(Button2.Handle);

У тебя слишком большой код получился!! !
Попробуй написать мой.

procedure TForm1.Button1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin
if ssCtrl in Shift then
begin
ReleaseCapture;
(Sender as TControl).Perform(WM_SYSCOMMAND, $F012, 0);
end;
end;

Это универсальный способ перетаскивания всех объектов, у которых есть
событие OnMouseDown (класс TControl)
Опиши только эти 5 строчек НА ЛЮБОМ компоненте и все будет работать!!! !

Хотя твой код тоже работает! Молодец!
Учись! Занимайся!
Удачи!

Ответ от Денис Котин[активный]
Попробуй так:

procedure TForm1.Button2MouseDown(Sender: TObject;
Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
if ssCtrl in Shift then begin
SetCapture(Button2.Handle); // Здесь видимо описка
Capturing := true;
MouseDownSpot.X := x;
MouseDownSpot.Y := Y;
end;
end;

Ответ от 3 ответа[гуру]
Привет! Вот подборка тем с ответами на Ваш вопрос: Вопрос по Делфи

Delphi, PopupMenu
Надо отцепить PopupMenu от всего и

procedure TForm1.ListBox1MouseDown(Sender: TObject;
подробнее...

stringgrid раскраска. при нажатии на ячейку нужно раскрасить его delphi или C++ builder
Непременно StringGrid?
Вот пример для DrawGrid. Дальше, если надо, сам адаптируй.
подробнее...

Delphi procedure TMain_Form.ApplicationEvents1Message


в Msg передаются еще и координаты курсора мыши. координаты эти отсчитываются от верхнего левого
подробнее...

Drag and Drop в делфи.
Проще всего делать Drag из тех компонентов, для которых однозначно ясно, что именно перетаскивать.
подробнее...
Ответ от 3 ответа[гуру]
Привет! Вот еще темы с похожими вопросами:

Delphi: как сделать,чтобы при нажатии ЛЕВОЙ кнопкой мыши по объекту выводилась PopupMenu?
Бросить на форму PopupMenu (ну и, конечно, оформить - двойным кликом)
а в инспекторе для этого
подробнее...
спросили в Gps
Ошейник с GPS-передатчиком
Вот смотрите тут 6000+
подробнее...

Гайморит...
Гайморит или нет, это ЛОР определяет по рентгеновскому снимку. Он же и антибиотики назначит,
подробнее...
 

Ответить на вопрос:

Имя*

E-mail:*

Текст ответа:*
Проверочный код(введите 22):*