我再次倾家荡产(总共65分,不好意思),敢问高手三个小问题?小问题(65分)

  • 主题发起人 主题发起人 laohe
  • 开始时间 开始时间
L

laohe

Unregistered / Unconfirmed
GUEST, unregistred user!
我再次倾家荡产(总共),敢问高手三个小问题?小问题

1.如何将jpg文件转为bmp文件?

2.如何获取OpenDialog打开的文件是性质(也就是后缀名是什么)?

3.如何实现OpenDialog打开多个文件?
 
procedure TForm1.JpgicoemfwmftoBmp1Click(Sender: TObject);
var
bmp:tbitmap;
begin
opendialog1.filter:='图片(*.jpg;*.ico;*.emf;*.wmf)|*.jpg;*.ico;*.emf;*.wmf|(*.*)|*.*';
if opendialog1.execute then
form1.image1.picture.loadfromfile(opendialog1.filename);
bmp:=tbitmap.create;
try
with bmp do
begin
width:=image1.picture.width;
height:=image1.picture.height;
canvas.draw(0,0,image1.picture.graphic);
savedialog1.filter:='图片(*.bmp)|*.bmp|(*.*)|*.*';
if savedialog1.execute then
savetofile(savedialog1.filename+'.bmp');
end;
finally
bmp.free;
showmessage('转换成功!');
end;
end;
//-->jpg to bmp


opendialog加ctrl多选
 
不好意思,我也不是高手。
不过你的问题,我可以提点方向。
1)可用工具软件,如Windows自带的画图板。:-)
2)可用VCL函数:ExtractFileExt(好象是的,具体函数的使用,可参考帮助文件)
3)OpenDialog的属性中有关于选定多个文件的设置,同样可参考帮助文件(如检索:
TOpenDialog)
 
试用了,但还有两个问题,不能用,高手出手吧,等着你呢
 
1、
uses jpeg;

var
jp: TJpegImage;
bmp:TBitmap;

jp := TJpegImage.Create;
bmp:=TBitmap.Create;
jp.LoadFromFile(文件名);
bmp.Assign(jp);
bmp.SaveToFile.........
 
2、
OpenDialog.FilterIndex 可以得到用户选择了第几个filter,第一个是1
不过用户可能自己输入后缀,不是选择的,那么可以用下面的函数得到后缀:
ExtractFileExt(OpenDialog.FileName) 得到的后缀包括了“.”点,比如“.txt”
 
1:
jp := TJpegImage.Create;
bmp:=TBitmap.Create;
try
jp.LoadFromFile(文件名);
bmp.Assign(jp);
finally
jp.free;
bmp.free;
end;
2:
OpenDialog中设置Filter属性
3:
OpenDialog中设置options属性中ofAllowMultiSelect为true,

 
3、设置opendialog的 Options 属性 ,选择 ofAllowMultiSelect
得到选择的所有文件:OpenDialog.Files
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
2K
DelphiTeacher的专栏
D
D
回复
0
查看
1K
DelphiTeacher的专栏
D
后退
顶部