Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.08.12;
Скачать: 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 вся ветка

Текущий архив: 2007.08.12;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.045 c
2-1184152263
Slimer
2007-07-11 15:11
2007.08.12
Шифрование строки


15-1184400782
iZEN
2007-07-14 12:13
2007.08.12
В чём философский смысл побелки бордюров?


4-1172262979
Comp
2007-02-23 23:36
2007.08.12
TWMMouseWheel


15-1184343965
SkySpeed
2007-07-13 20:26
2007.08.12
Объясните плиз работу 2-х ядерного процессора...


2-1184572332
L2
2007-07-16 11:52
2007.08.12
Вычисляемые поля





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский