怎样让窗体在桌面上来回移动???急!急!急!(100分)

Q

qbtxx

Unregistered / Unconfirmed
GUEST, unregistred user!
[:(]我叫:qbtxx
朋友你好!
希望你能帮助我
我想做一个窗体在桌面上来回移动,比如在移动时窗体碰到桌面
上下左右边界时窗体[Form1]能自己反弹,就象有些屏幕保护的那些文字
在规定空间里来回移动那样,来回的快慢速度也可以自由调节。
不知道窗体[Form1]在桌面上能否也做到这样的效果???
我自己做了一个试验代码 如下
procedure TForm1.Timer1Timer(Sender: TObject);
begin
form1.left:=form1.left+10;
if form1.left>screen.width-form1.width then
form1.Left:=screen.Height-form1.Width;
end;
运行上面的代码后能看见窗体在向右移动碰撞到桌面的右边界,
然后好象窗体是在反弹回来,就这样来回反弹,
可还是达不到上面我所想要的上下左右反弹效果!!
窗体向右移动时速度还可以,可就是反弹的速度太快!!!
不知怎样才能做到上面我想要的效果呢???
你看后不要讲理论怎样!怎样的!!!
我要的是你有用代码和实验过的源程序!

急!急!急! 很急要!!!
 
喔,我看看
 
var
x,y:integer;

procedure TForm1.Create(Sender: TObject);
begin
x:=10;
y:=10;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
form1.left:=form1.left+x;
if form1.left>screen.width-form1.width then
begin
form1.Left:=screen.width-form1.Width;
x:=-x;
end;
if form1.left<0 then
begin
form1.Left:=0;
x:=-x;
end;
form1.top:=form1.top+y;
if form1.top>screen.height-form1.height then
begin
form1.top:=screen.height-form1.height;
y:=-y;
end;
if form1.top<0 then
begin
form1.top:=0;
y:=-y;
end;
end;
 
procedure TForm1.Timer1Timer(Sender: TObject);
begin
form1.left:=form1.left+10;
if form1.left>screen.width-form1.width then
form1.Left:=screen.Height-form1.Width;
application.ProcessMessages
end;
 
送给[ysai]的感谢信qbtxx
朋友你好!
我现在的心情很激动不知该对你说什么好!!!
我是刚加入Delphi大福翁论坛也是第一次在论坛里发出
自己的难题,很快就得到了你的帮助我真很感谢您!
我想和你交个朋友可以吗??? 8-)
我的QQ号是:108871773[小青蛙]
 
送给Delphi大福翁论坛的感谢信
qbtxx真心的感谢Delphi大福翁论坛给予了我学习和发表的
空间,我从中看到了祖国电脑软件业美好的未来!!!
中国的程序员们一起努力吧!!!
 
既然左右都判断了,那么自己加上上下判断不就行了,要举一反三嘛
 
// 分就不要了,感谢信还是要的哦。 :)
 
小 雨 哥 的 感 谢 信
小 雨 哥 你 好! :cool:
我非常得感谢你!
不用我说你是一位优秀的程序员,我从你上次留言里
我可以看出你也是一位爱搞幽默的朋友,我喜欢!
8-) 我也是 呵呵 我想象你这样有才华又有幽默感的
男子汉,围在你身边的MM一定是数也数不清吧!!!
哈哈 能否介绍一两个给我呢!8-)
哦 能否在帮帮小弟的忙?
小弟想做一个背景音乐,可用OLE里[用媒体剪辑做出来]
不能集成在EXE文件中,所以我想把声音文件做在资源文件
然后在用播放资源声音参数播放,可我不知道怎么样才能
认它循环播放?暂停?停止?
你能给我一个例程和它的代码吗???
我可以给一点分你!
帮帮我吧!!! 急呀!急呀!
 
可以啊,哈哈,我有这么多好处啊,有点晕哟~~~。wangxy@371.net 给我发信。
 
MoveWindow
 
TO:qbtxx
分我不要,你给了我都白搭,每个月月底我会清除自己的所有得分,从 0 开始。
祝你节日愉快,有空给我发信玩。
 
呵呵 好的
 
顶部