如何将图片逐渐显示出来?

飞跃重洋的思念
博客专家认证
2010-05-19 09:23:52
每次显示图像的一个局部,将其逐渐显示出来,做成动态效果,请问应该怎么做?
我已经知道的一个方法是把图片的一部分复制出来,然后使用draw函数在窗体的canvas上面绘制,但是这样做起来canvas上面的内容将被覆盖而且不能让绘制在canvas上的部分消失掉。
请问有没有更好的方法解决这个问题?
...全文
307 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
sghff110 2010-07-18
  • 打赏
  • 举报
回复
是否可考虑三方控件,比如picshow
大拙男 2010-05-21
  • 打赏
  • 举报
回复
看gdi+里面的DrawImage,有个重载的,可能靠谱
lhy 2010-05-19
  • 打赏
  • 举报
回复
没明白你说得确切含义。
hsmserver 2010-05-19
  • 打赏
  • 举报
回复
var
FRect:TRect;
begin
Image2.Picture:=nil;
FRect.Left:=0;
FRect.Top:=0;
FRect.Right:=Image1.Width;
FRect.Bottom:=20;
Image2.Canvas.CopyRect(FRect,Image1.Canvas,FRect);
while FRect.Bottom<Image1.Height do
begin
Sleep(100);
Self.Image2.Update;
FRect.Top:=FRect.Bottom;
if Image1.Height-FRect.Bottom<20 then
FRect.Bottom:=Image1.Height
else
FRect.Bottom:=FRect.Bottom+20;
Image2.Canvas.CopyRect(FRect,Image1.Canvas,FRect);
end;

1,183

社区成员

发帖
与我相关
我的任务
社区描述
Delphi GAME,图形处理/多媒体
社区管理员
  • GAME,图形处理/多媒体社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧