delphi的画图函数好辛苦哦!花一个扇形还需以点来作为参数,角度都不行!咳咳! (30分)

  • 主题发起人 主题发起人 ccnujzw
  • 开始时间 开始时间
C

ccnujzw

Unregistered / Unconfirmed
GUEST, unregistred user!
[:(][brown][/brown][red][/red]这是我的第一次,第一个项目,编写一个bmp图像的显示系统,现在还没有完成的细节有
1,如何通过用一张画布以不同的方式遮住原来的图像,以显示出动态.比如扇形展开,拉幕
(即从中间向两边逐渐展开)等等,还请举个例子实现和原画布的与或运算.
2, 想问一下,能否编程通过移动画布来实现动态效果.
3,(呵呵,不好意思,问题这么多),在从缓存画布向新建画布上用copyrect()拷贝矩形时,如果
新建的画布不和原图形一样大小,则会丢失部分图像或会出现部分空白.,如何将新建的画布利用
newbmp:= TBitmap.Create; )创建的画布,变为可以以任意大小容纳原图像呢?
好了,我的问题完了.到现在已没有分可以送了,以后补上!老板催得紧,急!
 
1,各种算法自己想或去找,方法如下
Image1.canvas.Brush.Color=clRed;
Image1.Canvas.FillRect....................
但这样会引起图形的闪动,解决方法明天可以找到。
2、不用移动画布,移动Image就可以了。
3、 Image1.Canvas.Brush.Bitmap:=newbmp;
Image1.Canvas.FillRect(0,0,Image1.width,Image1.height);
 
移动image1,比如函数为:....?
 
image1.Left := image1.Left + 1;
 
怎样解决图像在屏幕上移动时会闪烁的问题,用form1.fresh会闪烁,不用也会闪烁,
Please tell me why?
 
消除闪烁,只需令 Double Buffer 为 Enable 即可!
 
在哪个地方设?
怎么设啊?
 
没有做过图象的。也想知道。
 
procedure TForm1.FormCreate(Sender: TObject);
begin
Self.DoubleBuffered := True;
end;
 
呵呵喝!谢谢,马上给分,分少,不成谢意!
 

Similar threads

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