缩略图!BOSS让我用delphi实现windows缩略图的case!谁能帮下(100分)

  • 主题发起人 主题发起人 jackalwin
  • 开始时间 开始时间
to vvyang
实在不好意思这几天出门一躺刚回来,这个我看了 不行啊 不要图标效果的
要windows缩略图那种感觉的
 
有一套控件:JamShellBrowser 里面的 ShellList控件可以满足你的需要。和windows的资源管理器中的缩略图差不多。www.tomore.com中有下载。
 
to shang_yan
谢谢 要的就是那种 我现在去down一个
 
to 暮佳雨
你说那个也没有~迷糊!
 
你到www.tomore.com上用shellbrowser关键字找,有不少,肯定满足你的要求,放分!
 
to shang_yan
不对哥们不是这种感觉的  要的是在treeview里以图形方式显示出来的
例如:你随便打开个文件夹-查看-缩略图
 
还需要吗,我原来找到过一个网友的代码,很好,你留个邮箱发给你
 
too tgdjw
谢谢啊哥们 jackalwin@163.com
 
是像这样的吗
实现TListView的缩略图查看方式
http://downloads.2ccc.com/simples/components/cjsh_OspListView.rar
http://www.2ccc.com/article.asp?articleid=3361
 
鄙人自费建了一个QQ群 ,号码:22037366 请大家申请加入,唯一的要求是不要谈论Delphi以外的东西,我们的目标是将Delphi进行到底
 
不知道此过程是否能解决问题:
procedure TFangwu.PicAutoSize(Instream, outstream: Tstream; Width,
height: integer; fillcolor: Tcolor);
var
jpg: TjpegImage;
bmp: TBitmap;
ratio: double;
arect: Trect;
Aheight, AheightOffset: integer;
Awidth, awidthOffset: integer;
begin
if width < 1 then
raise EXception.Create('invaid width');
if height < 1 then
raise Exception.Create('invaid height');
jpg := Tjpegimage.Create;
try
jpg.LoadFromStream(instream);
bmp := Tbitmap.Create;
try
ratio := jpg.Width / jpg.height;
if ratio > 1 then
begin
Aheight := round(width / ratio);
aheightoffset := (height - Aheight) div 2;
awidth := width;
awidthoffset := 0;
end
else
begin
awidth := round(height * ratio);
awidthoffset := (width - awidth) div 2;
aheight := height;
aheightoffset := 0;
end;
bmp.Width := width;
bmp.Height := height;
bmp.Canvas.Brush.Color := fillcolor;
bmp.Canvas.FillRect(rect(0, 0, width, height));
arect := rect(awidthoffset, aheightoffset, awidth + awidthoffset, aheight
+ aheightoffset);
bmp.Canvas.StretchDraw(arect, jpg);
jpg.Assign(bmp);
jpg.SaveToStream(outstream);
finally
bmp.Free;
end;
finally
jpg.Free;
end;

end;
 
早给你发了,收到没收到也不吭一声,现在的人啊,不懂礼节
 
接受答案了.
 
后退
顶部