Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.09.26;
Скачать: CL | DM;

Вниз

Image и ScrollBar   Найти похожие ветки 

 
Ender   (2002-09-13 20:01) [0]

Уважаемые мастера, как сделать так, чтоб при изминении Position
ScrollBar"а битмап в Image смещался соответствующим образом, как например в MS Paint?


 
Алексей Ким   (2002-09-13 20:08) [1]

s - timage, panel1 - рамка, sb - scroolbar
s.Left := panel1.Width-round((sb.Position / sb.Max) * panel1.Width);
ну сам доделаешь толька это придумал


 
TTCustomDelphiMaster   (2002-09-13 20:22) [2]

Используйте ScrollBox


 
softland   (2002-09-13 20:25) [3]

Кладешь на форму sb : TScrollBar; в него кладешь im : TImage;
в инспекторе у im устанавливаешь ширину и высоту своего рисунка, конечно можно и в run time. Если размер рисунка больше чем у sb, то он будет скролинговаться, вроде всё...
Или я чего-то не понял???


 
softland   (2002-09-13 20:27) [4]

Вот черт, действительно прав TTCustomDelphiMaster, надо TScrollBox :-( извините.


 
mukha   (2002-09-13 23:00) [5]

Всё таки TImage и TScrollBar имеют преимущество перед TScrollBox.
Вот пример (код рабочий, проверил):
</unit Unit1;

interface

uses
Windows, Jpeg, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
StdCtrls, ExtCtrls;

type
TForm1 = class(TForm)
Panel1: TPanel;
Image1: TImage;
ScrollBarHor: TScrollBar;
ScrollBarVert: TScrollBar;
procedure FormCreate(Sender: TObject);
procedure ScrollBarHorChange(Sender: TObject);
procedure ScrollBarVertChange(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.FormCreate(Sender: TObject);
begin
Panel1.Caption:="";
Image1.Autosize:=true;
Image1.Align:= alNone;
ScrollBarHor.Min:=0;
ScrollBarVert.Min:=0;
Image1.Picture.LoadFromFile("C:\Delphi5\Projects\A\Фото.jpg");
ScrollBarHor.Max:=Image1.Picture.Width-Panel1.Width;
ScrollBarvert.Max:=Image1.Picture.Height-Panel1.Height;
end;

procedure TForm1.ScrollBarHorChange(Sender: TObject);
begin
Image1.Left:=-ScrollBarHor.Position;
end;

procedure TForm1.ScrollBarVertChange(Sender: TObject);
begin
Image1.Top:=-ScrollBarVert.Position;
end;

end.CODE>


 
Ender   (2002-09-14 00:24) [6]

Спасибо всем :)



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

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

Наверх




Память: 0.45 MB
Время: 0.011 c
8-85617
a_n_t
2002-05-30 16:40
2002.09.26
rgb -> 16bit


1-85580
Октябрь
2002-09-14 12:01
2002.09.26
Фунция случайных чисел


3-85406
Voldemar2000
2002-09-06 00:25
2002.09.26
БД FoxPro


4-85762
anod
2002-08-10 23:31
2002.09.26
В WM_DRAWITEM


1-85485
AFrolov
2002-09-16 17:31
2002.09.26
Как узнать какой флажок сняли/установили в TCheckListBox





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский