unit
Unit2;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, sSkinProvider, ExtCtrls, jpeg, ComCtrls, sListView, sPanel,
StdCtrls, sButton, sScrollBar, sLabel, sEdit, sMemo, Buttons,
sSpeedButton;
type
TfrmAlbom =
class
(TForm)
sSkinProvider1: TsSkinProvider;
sPanel1: TsPanel;
photo1: TImage;
photo2: TImage;
photo3: TImage;
photo4: TImage;
photo5: TImage;
sScrollBar1: TsScrollBar;
photos: TListBox;
big: TImage;
sPath: TsEdit;
sButton1: TsButton;
sCur: TsEdit;
SpeedButton1: TSpeedButton;
procedure
sScrollBar1Change(Sender: TObject);
procedure
photo1Click(Sender: TObject);
procedure
photo2Click(Sender: TObject);
procedure
photo3Click(Sender: TObject);
procedure
photo5Click(Sender: TObject);
procedure
photo4Click(Sender: TObject);
procedure
sButton1Click(Sender: TObject);
procedure
FormShow(Sender: TObject);
procedure
SpeedButton1Click(Sender: TObject);
private
public
end
;
var
frmAlbom: TfrmAlbom;
path :
string
;
implementation
uses
Unit1;
{$R *.dfm}
procedure
ScanDir(StartDir, Mask:
String
; List: TStrings);
var
SearchRec: TSearchRec;
begin
List
.
Clear;
if
Mask =
''
then
Mask:=
'*.*'
;
if
StartDir[Length(StartDir)] <>
'\' then StartDir := StartDir + '
\';
if
FindFirst(StartDir+Mask, faAnyFile, SearchRec) =
0
then
begin
repeat
Application
.
ProcessMessages;
if
(SearchRec
.
Attr
and
faDirectory) <> faDirectory
then
List
.
Add(Copy(SearchRec
.
Name,
1
,length(SearchRec
.
Name)-
4
))
else
if
(SearchRec
.
Attr
and
faDirectory) <>
0
then
begin
end
;
until
FindNext(SearchRec) <>
0
;
FindClose(SearchRec);
end
;
end
;
procedure
Delay(ms :
longint
);
var
TheTime :
LongInt
;
begin
TheTime := GetTickCount + ms;
while
GetTickCount < TheTime
do
Application
.
ProcessMessages;
end
;
procedure
Draw;
var
pp:
string
;
op:
longint
;
begin
pp:=path;
op:=pos('\Photos\',pp);
delete(pp,op,
8
);
insert('\PhotosTB\',pp,op);
frmAlbom
.
photo1
.
Picture
.
LoadFromFile(pp+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position-
1
]+
'.jpg'
);
frmAlbom
.
photo2
.
Picture
.
LoadFromFile(pp+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position]+
'.jpg'
);
frmAlbom
.
photo3
.
Picture
.
LoadFromFile(pp+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
1
]+
'.jpg'
);
frmAlbom
.
photo4
.
Picture
.
LoadFromFile(pp+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
2
]+
'.jpg'
);
frmAlbom
.
photo5
.
Picture
.
LoadFromFile(pp+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
3
]+
'.jpg'
);
end
;
procedure
TfrmAlbom
.
sScrollBar1Change(Sender: TObject);
begin
Draw;
end
;
procedure
TfrmAlbom
.
photo1Click(Sender: TObject);
begin
Self
.
big
.
Picture
.
LoadFromFile(Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position-
1
]+
'.jpg'
);
sCur
.
Text := Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position-
1
]+
'.jpg'
;
end
;
procedure
TfrmAlbom
.
photo2Click(Sender: TObject);
begin
Self
.
big
.
Picture
.
LoadFromFile(Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position]+
'.jpg'
);
sCur
.
Text := Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position]+
'.jpg'
;
end
;
procedure
TfrmAlbom
.
photo3Click(Sender: TObject);
begin
Self
.
big
.
Picture
.
LoadFromFile(Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
1
]+
'.jpg'
);
sCur
.
Text := Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
1
]+
'.jpg'
;
end
;
procedure
TfrmAlbom
.
photo5Click(Sender: TObject);
begin
Self
.
big
.
Picture
.
LoadFromFile(Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
3
]+
'.jpg'
);
sCur
.
Text := Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
2
]+
'.jpg'
;
end
;
procedure
TfrmAlbom
.
photo4Click(Sender: TObject);
begin
Self
.
big
.
Picture
.
LoadFromFile(Path+
'\'+frmAlbom.photos.Items[frmAlbom.sScrollBar1.position+2]+'
.jpg');
sCur
.
Text := Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position+
3
]+
'.jpg'
;
end
;
procedure
TfrmAlbom
.
sButton1Click(Sender: TObject);
begin
Self
.
Close;
end
;
procedure
TfrmAlbom
.
FormShow(Sender: TObject);
begin
Path := Self
.
sPath
.
Text;
ScanDir(Path,
'*.jpg'
,Self
.
photos
.
Items);
Self
.
sScrollBar1
.
Max := Self
.
photos
.
Items
.
Count -
5
;
Self
.
sScrollBar1
.
Position :=
1
;
Self
.
big
.
Picture
.
LoadFromFile(Path+frmAlbom
.
photos
.
Items[frmAlbom
.
sScrollBar1
.
position-
1
]+
'.jpg'
);
Draw;
end
;
procedure
TfrmAlbom
.
SpeedButton1Click(Sender: TObject);
begin
winexec(
PChar
(
'explorer /select,'
+self
.
sCur
.
Text),SW_Restore);
end
;
end
.