|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
компонент image в delphi
добрый день
как в компоненте image сделать чтоб рисунок вставленный можно было перемещать в приделах этого компонента? заранее благодарен |
#2
|
|||
|
|||
Можно так. Картинка внутри панели.
Код:
procedure FormCreate(Sender: TObject); begin Image1.Picture.LoadFromFile('picture.bmp'); // Задаем размеры (масштаб) Image1.Width := Image1.Picture.Width; Image1.Height := Image1.Picture.Height; end; procedure Image1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin CursorStartPosY := Y; CursorStartPosX := X; end; procedure Image1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); begin // Перемещение if (ssLeft in Shift) then begin Image1.Top := Image1.Top - (CursorStartPosY-Y); Image1.Left := Image1.Left - (CursorStartPosX-X); // Чтоб рисунок не выходил за края if Image1.Top < Panel1.Height - Image1.Height then Image1.Top := Panel1.Height - Image1.Height; if Image1.Left < Panel1.Width - Image1.Width then Image1.Left := Panel1.Width - Image1.Width; if Image1.Top > 0 then Image1.Top := 0; if Image1.Left > 0 then Image1.Left := 0; end; end; |