Akkor leírnám mire jutottam. Van egy Form-om, legyen neve Form2. Az alábbi beállítások érvényesek:
WindowsState = wsMaximized
AutoScroll = False
Van egy ScrollBoxom, legyen a neve ScrollBox1. Az alábbi beállítások érvényesek:
Align = alClient
AutoScroll = True
És akkor a forráskód:
unit elsokep;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, ExtCtrls, JPEG;
type
TForm2 = class(TForm)
ScrollBox1: TScrollBox;
procedure FormShow(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form2: TForm2;
implementation
uses anla;
{$R *.dfm}
procedure TForm2.FormShow(Sender: TObject);
var
JPG1: TJPEGImage;
begin
//Formot a bal felso sarokba allitom
Form2.Top:=0;
Form2.Left:=0;
//Meghatarozzuk a megjelenitendo kep meretet
JPG1:=TJPEGImage.Create;
JPG1.LoadFromFile('c:\01.jpg');
//Letrehozzuk a megjelenitendo kep komponenset a jo beallitasokkal
with TImage.Create(self) do begin
Name:='Kep';
Parent := ScrollBox1;
Autosize:=True;
Top := 0;
Left := 0;
Width := JPG1.Width;
Height := JPG1.Height;
Picture.LoadFromFile('c:\01.jpg');
end;
end;
end.
Ez annyit tud, hogy új formon megjeleníti scrollboxban a képet eredeti felbontásban. Erre kellene egy OnClick, hogy milyen változás legyen, ha kattintok. Ezt is megcsináltam, de nem jó:
procedure TForm2.KepClick(Sender: TObject);
begin
ShowMessage('OK');
end;
Azt írja, hogy a Kep nem található, pedig ilyen néven hoztam létre... Ötletek?
"Mindent azért kell tudni mert kérdezik, nem azért mert hasznos."