程序设计问题请教(100分)

H

hhxxj

Unregistered / Unconfirmed
GUEST, unregistred user!
俺还在做一个项目, 现在主要是做一些简单图象处理,比如在一些图片上画点东西,让一些图标按照画的路线移动,或者使一些画定的部分闪烁,现在遇到一些问题,
1,就是如何确定用户是否修改了图片?这个是为了保存图象所需要的?这个问题在用OLE调用WORD时也是同样的问题,如今还未得到解决!
2,关于图标的移动,我也实现了,但是主要时回放问题,ling也说用个RECORD来记录一些信息。然后在重新赋值,不过俺现在还是有些糊涂, 希望能给个具体的解释?
3,指定目标的闪烁,我主要是用timer来控制,不停的进行绘画,重画,它就一直不停的闪烁,其实我主要是想要他闪烁几次,可是我发现我没法控制,我用了两个timer,一个是来画一个简单多边形,比如椭圆,然后画完后再把另一个timer给enable,然后在这个TIMER里把原图给恢复,可是现在我如果想要指定目标闪烁几次,就得用循环语句实现,程序大致如下
while BlinkCount>0 do
begin

mapmake.Timer4.OnTimer(sender);

mapmake.Timer5.OnTimer(sender);
BlinkCount:=BlinkCount-1;
end;

发现好像他是先循环执行TIMER4的ONTIMER事件,然后再执行TIMER5的事件,结果这样使得我的图象和没闪烁一样,如果我用timer.Enbale似乎就先执行循环,然后在执行timer事件, 即只执行了一次TIMER事件,不知道是不是编程设计的思想问题.一开始我是在两个TIMER事件利互相enable和disenable,这样虽然能闪烁,但是如何才能按照我指定的次数来闪烁呢?这里也同样有个参数保存问题?现在胡涂了,不知道怎么写了!(注,在写这第三个问题时,有点思路了,就是在计时器利加上次数变量的判断,现在有些胡涂,希望各位大侠给个指点).
 
对啊,用一个变量记录又闪次数啊,大于这个次数把自己设为false
timer4.ontimer(sender)
begin
if count > 5 then
time4.enabled := false
else
//闪啊
end;
 
其实我是想重放这个过程,即保存结果,现在我想用合成GIF动画或者AVI的形式,用了RXLIB里的
EXGIFIMAGE控件,在我每操作一下比如画一条线就把当前的图象给保存起来并加到gifimage的里面
作为一祯,但是不能很好的控制每祯图片的间隔时间,而且用了以后程序速度突然很慢,画线几乎不能进行。
, 一画就成了扫把状了,不知道除了RXLIB自己带的例子,各位老大有没有好的办法?
 
结束了,没人关注!
 
顶部