Вниз
Скачать: CL | DM;

Помогите, кто знает!   Найти похожие ветки 

← →
Areat   (2006-11-07 22:26) [0]

Здраствуйте.
Помогите пожалуйсто разобраться с одной проблемой:
Делаю программу для просмотра изображений bmp и jpg.
компонент Image1 расположил внутри компонента ScrollBox1,
для того чтобы если свойсто AutoSize имеет значение True,
можно было рассмотреть весь рисунок(при этом появляются полосы прокрутки: справа и
слева).
Нужно сделать так , чтобы не касаясь полос прокрутки можно было рассмотреть весь рисунок,
если он выходит за пределы ScrollBox1.
То есть: "зажал" левой кнопкой мыши изображение и двигаешь его вверх, вниз,
влево, вправо внутри ScrollBox1 и смотришь любую часть изображения двигая его мышью.


← →
SamBrook ©   (2006-11-07 23:46) [1]

Я в таких случаях пользуюсь drag&drop.


type
TForm1 = class(TForm)
 private
    fDragStart: TPoint;
.......................................

procedure TForm1.Image1MouseDown(Sender: TObject; Button: TMouseButton;
 Shift: TShiftState; X, Y: Integer);
begin
 fDragStart:=Point(X,Y);
 Image1.BeginDrag(false,3);
end;

procedure TForm1.Image1DragOver(Sender, Source: TObject; X, Y: Integer;
 State: TDragState; var Accept: Boolean);
var deltaX,deltaY: integer;
begin
 deltaX:=x-fDragStart.X;
 deltaY:=Y-fDragStart.Y;

 with ScrollBox1 do begin
   HorzScrollBar.Position:=HorzScrollBar.Position-deltaX;
   VertScrollBar.Position:=VertScrollBar.Position-deltaY;
 end;
end;



← →
Ketmar ©   (2006-11-08 01:19) [2]

СЛЕВА?!


← →
SamBrook ©   (2006-11-08 02:13) [3]


> Ketmar ©   (08.11.06 01:19) [2]
> СЛЕВА?!

???


← →
Ketmar ©   (2006-11-08 02:19) [4]

>[0] Areat 7-Nov-2006, 22:26
>(при этом появляются полосы прокрутки: справа и слева).
выделение моё. %-)


← →
SamBrook ©   (2006-11-08 02:36) [5]

У стандартного tScrollbox не бывает полосы прокрутки слева.


← →
Ketmar ©   (2006-11-08 10:52) [6]

>[5] SamBrook(c) 8-Nov-2006, 02:36
>У стандартного tScrollbox не бывает полосы прокрутки слева.
так вот мне и интересно, откуда она взялась у автора. %-)


← →
Areat   (2006-11-08 11:51) [7]

Все получилось, спасибо большое за побробный ответ,

Полоса справа- я описался, торопился.


← →
antonn ©   (2006-11-08 21:57) [8]

Areat   (08.11.06 11:51) [7]
Полоса справа- я описался, торопился.

не добежал? %)



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.019 c
2-1184610269
Knob
2007-07-16 22:24
2007.08.12
Как добавить в список


1-1181105710
DelphiN!
2007-06-06 08:55
2007.08.12
Подключиться к HKEY_CURRENT_USER другого пользователя


2-1184682775
Knob
2007-07-17 18:32
2007.08.12
Две проги


15-1184486603
TStas
2007-07-15 12:03
2007.08.12
Test


6-1141228505
Gnobobel
2006-03-01 18:55
2007.08.12
Indy: Не посылаются Cookies.




   Наверх