level 9
lz
打错字了,是TBlodField,还要uses DB
2017年03月06日 01点03分
3
还是不行
![[不高兴]](/static/emoticons/u4e0du9ad8u5174.png)
求大神指导
2017年03月11日 15点03分
level 8
我上传图片用的是image控件,而非dbimage控件。
代码如下
var
subPath, fullPath, old, FileName: string;
rmFilestream: Tfilestream;
MemSize: integer;
begin
if frm_plat.ADOTable人员.RecordCount <= 0 then
begin
exit;
end;
if DirectoryExists(getCurrentDir() + '\image') = false then
begin
ForceDirectories(getCurrentDir() + '\image');
end;
old := '';
if OpenPictureDialog1.Execute then
begin
if frm_plat.ADOTable人员.Fieldbyname('照片').Text <> '' then
begin
old := frm_plat.ADOTable人员.Fieldbyname('照片').Text; // 以/开头
end;
subPath := '\image\' + formatdatetime('yyyymmddhhmmss', now) + ExtractFileExt(OpenPictureDialog1.FileName);
fullPath := getCurrentDir() + subPath;
FileName := OpenPictureDialog1.FileName; //获取文件名称及完整路径
rmFilestream := TFileStream.Create(FileName, fmopenRead);
rmFilestream.Position := 0;
MemSize := rmFilestream.Size; //获取文件大小
rmFilestream.Free;
if memsize >= 1017705 then
begin
showmessage('文件尺寸不能大于1M!');
exit;
end;
//showmessage('[' + OpenPictureDialog1.FileName + ']' +
#13 + '[' + fullPath + ']' + #
13 + '[' + subPath + ']');
copyfile(PChar(OpenPictureDialog1.FileName), PChar(fullPath), true);
if old <> '' then deleteFile(getCurrentDir() + old);
frm_plat.ADOTable人员.Edit;
frm_plat.ADOTable人员.Fieldbyname('照片').Text := subPath;
frm_plat.ADOTable人员.Post;
image人员.Picture.LoadFromFile(fullPath);
end;
2017年03月13日 13点03分
6