Caption do Form, anda...

Delphi

20/11/2003

Olá, gostaria de que o caption do form, andasse de um lado pro outro...
COmo faço isso?!
Valew..
ele naum pode parar

Falow
Valew


Reynaldo Giane

Reynaldo Giane

Curtidas 0

Respostas

Yankleber

Yankleber

20/11/2003

Olá,

É muito simples!

1) Coloque um componente TTimer no seu formulário, e modifique a propriedade [b:a5c52c1b01]Interval[/b:a5c52c1b01] para 100.

2) Em seguida no EVENTO OnTimer do componente TTimer, insira o seguinte código:

procedure TForm1.Timer1Timer(Sender: TObject);
var tempcap : string;
    z : integer;
begin
    tempcap := ´´;
    if FlagDir = true then x := x+1 else x := x-1;
    for z := 1 to x do tempcap := tempcap + ´ ´;
    tempcap := tempcap + trim(Form1.caption);
    Form1.caption := tempcap;
    if x = 10 then FlagDir := false;
    if x = 1 then FlagDir := true;
end;


3) No evento FormCreate do formulário, coloque:

procedure TForm1.FormCreate(Sender: TObject);
begin
    FlagDir := true;
    x := 1;
end;


4) Não esqueça de declarar as variáveis x (integer) e FlagDir (boolean) na seção var (antes de implementation) do seu form.

Se você quiser que o caption ande mais devagar ou mais rápido, aumente ou diminua o calor da propriedade Interval do componente TTimer. Se você quiser que o espaço de movimentação do caption seja maior (no presente exemplo ele move-se 10 caracteres para cada lado), simplesmente aumente o valor do x na linha:

if x = 10 then FlagDir := false;


Espero ter ajudado!


GOSTEI 0
Ggean

Ggean

20/11/2003

Passei tanto tempo tentando faze-lo que o colega postou uma maneira bem mais facil e rápida

veja como consegui;

[b:6af641f065]var[/b:6af641f065]
Form1: TForm1;
cont:integer = 1;
vvai:boolean = true;

[b:6af641f065]implementation[/b:6af641f065]
{$R *.DFM}

[b:6af641f065]procedure[/b:6af641f065] vai;
[b:6af641f065]var[/b:6af641f065]
s:[b:6af641f065]string[/b:6af641f065];
w:char;
[b:6af641f065]begin[/b:6af641f065]
w:=´ ´;//[color=blue:6af641f065]note o espaco[/color:6af641f065]
s:=W+form1.caption;
form1.caption:=s;
cont:=cont+1;
vvai:=true;
[b:6af641f065]end[/b:6af641f065];
[b:6af641f065]procedure[/b:6af641f065] volta;
[b:6af641f065]var[/b:6af641f065]
ss:[b:6af641f065]string[/b:6af641f065];
[b:6af641f065]begin[/b:6af641f065]
ss:=form1.caption;
delete(ss,1,1);
form1.caption:=ss;
cont:=cont-1;
vvai:=false;
[b:6af641f065]if [/b:6af641f065]cont<=1 [b:6af641f065]then[/b:6af641f065]
vvai:=true;
[b:6af641f065]end[/b:6af641f065];

[b:6af641f065]procedure [/b:6af641f065]TForm1.Timer1Timer(Sender: TObject);
[b:6af641f065]begin[/b:6af641f065]
[b:6af641f065]if [/b:6af641f065](cont<=50)[b:6af641f065]and[/b:6af641f065](vvai) [b:6af641f065]then[/b:6af641f065]
vai
[b:6af641f065]else[/b:6af641f065]
volta;
[b:6af641f065]end[/b:6af641f065];


GOSTEI 0
POSTAR