首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

delphi panel 跑马灯成效 字符串循环从左向右移动

2012-11-06 
delphi panel 跑马灯效果 字符串循环从左向右移动大家好!求delphi 代码。如delphi 的panel 的caption 属性

delphi panel 跑马灯效果 字符串循环从左向右移动
大家好!
  求delphi 代码。
  如delphi 的panel 的caption 属性设为"跑马灯效果"。能不能达到这样的效果。字符串:“跑马灯效果”可以自左向右移动。当字符串到达右边时,字符串又可以从左边开始移动。像某些网站的跑马灯效果!

谢谢!

[解决办法]
unit Unit1;

interface

uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
ExtCtrls, StdCtrls;

type
TForm1 = class(TForm)
Panel1: TPanel;
Label1: TLabel;
Timer1: TTimer;
procedure Timer1Timer(Sender: TObject);
procedure FormCreate(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;
flag:string;
implementation

{$R *.DFM}

procedure TForm1.Timer1Timer(Sender: TObject);
begin
if label1.Left=0 then
begin
flag:='1'; //向右移动
end;
if label1.Left=340 then
begin
label1.Left:=0;// 将label1位置赋值到最左边
flag:='1'; //向右移动
end;
if flag='1' then
begin
label1.Left:=label1.Left+10;
end;
//if flag='2' then
//begin
//label1.Left:=label1.Left-10;
//end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
label1.Left:=0;
end;

end.


这个就是你要效果。别忘记加个timer控件
效果是:先从左边到右边,到达最右边之后,会自动跳转到最左边,然后重新去右边
[解决办法]
调整好panel的宽度

加个Timer 其ontimer事件中
if panel1.left+panel1.Width>form1.Width then
panel1.Left:=0
else
panel1.Left:=panel1.Left+10;

热点排行