📄 main.pas
字号:
unit main;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
FileCtrl, StdCtrls, ExtCtrls, Buttons,Jpeg, ImgList;
const MaxNum=6;
type
ShowDataRecord=Record
Image:TImage;
Panel:TPanel;
FileName:string[15];
end;
TMainForm = class(TForm)
DriveComboBox1: TDriveComboBox;
FilterComboBox1: TFilterComboBox;
DirectoryListBox1: TDirectoryListBox;
FileListBox1: TFileListBox;
Bevel1: TBevel;
Panel1: TPanel;
CloseBitBtn: TBitBtn;
SmallImage: TImage;
BigViewBitBtn: TBitBtn;
procedure CloseBitBtnClick(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure FormDestroy(Sender: TObject);
procedure FileListBox1Click(Sender: TObject);
procedure BigViewBitBtnClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
JpgImage:TJpegImage;
PictureWidth,PictureHeight:Integer;
end;
var
MainForm: TMainForm;
implementation
uses Bigpas;
{$R *.DFM}
procedure TMainForm.CloseBitBtnClick(Sender: TObject);
begin
Close;
end;
procedure TMainForm.FormCreate(Sender: TObject);//创建窗体
begin
JpgImage:=TJpegImage.Create;
PictureWidth:=0;
PictureHeight:=0;
end;
procedure TMainForm.FormDestroy(Sender: TObject);//窗体消亡
begin
JpgImage.Free;
end;
procedure TMainForm.FileListBox1Click(Sender: TObject);
var
FileExt:String;//存放文件扩展名
Begin
//文件扩展名小写化
FileExt:=AnsiLowerCase(ExtractFileExt(FileListBox1.FileName));
if (FileExt='.bmp') or (FileExt='.ico') then //.bmp和.ico格式文件
begin
SmallImage.Picture.LoadFromFile(FileListBox1.FileName);//调入文件
PictureWidth:=SmallImage.Picture.Width;//保存文件宽高
PictureHeight:=SmallImage.Picture.Height;
end
else
if FileExt='.jpg' then//是.jpg文件
begin
JpgImage.LoadFromFile(FileListBox1.FileName);
SmallImage.Picture.Graphic:=jpgImage;
PictureWidth:=JpgImage.Width;
PictureHeight:=JpgImage.Height;
end;
end;
procedure TMainForm.BigViewBitBtnClick(Sender: TObject);
begin
if FileListBox1.FileName<>'' then//文件存在
begin
with BigForm do
begin
BigImage.Picture:=SmallImage.Picture; //图形
BigImage.Width:=PictureWidth;//设置宽高
BigImage.Height:=PictureHeight;
if (PictureHeight>BigForm.ClientHeight) and
(PictureWidth>BigForm.ClientWidth) then
begin//图形宽高大于窗体时
BigImage.Top:=0;
BigImage.Left:=0;
end
else
if PictureHeight>BigForm.ClientHeight then
begin//图形高大于窗体高时
BigImage.Top:=0;
BigImage.Left:=(BigForm.ClientWidth-PictureWidth) div 2;
end
else
if PictureWidth>BigForm.ClientWidth then
begin//图形宽大于窗体宽时
BigImage.Top:=(BigForm.ClientHeight-PictureHeight) div 2;
BigImage.Left:=0;
end
else
begin//图形宽高小于等到于窗体宽高时
BigImage.Top:=(BigForm.ClientHeight-PictureHeight) div 2;
BigImage.Left:=(BigForm.ClientWidth-PictureWidth) div 2;
end;
Color:=clBlack;//设置窗体颜色为黑色
Caption:=FileListBox1.FileName;//显示文件名
Show;//显示大图
end;
end;
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -