Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Вниз

Caption у формы 


Romik   (2002-03-21 20:10) [0]

Здраствуйте Мастера!
Подскажите пожалуйста как сделать caption у формы анимированным,
т.е создать эффект движения текста.

Заранее благодарю ответивших.



Юрий Зотов   (2002-03-21 20:39) [1]

Например, исходный текст храним в строке, текущее начало - в целой переменной, а Caption формируем по таймеру исходя из этих данных.



Romik   (2002-03-21 20:41) [2]

>Юрий Зотов © (21.03.02 20:39)

Нельзя ли поподробнее - я начинающий программист.



Юрий Зотов   (2002-03-21 21:27) [3]

Вот возможный вариант, если что не устраивает - доработайте его.

unit Unit1;

interface

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

type
TForm1 = class(TForm)
Timer1: TTimer;
Edit1: TEdit;
Button1: TButton;
procedure Timer1Timer(Sender: TObject);
procedure Button1Click(Sender: TObject);
private
FPos: integer;
FCaption: string;
public
procedure SetNewCaption(const Value: string);
end;

var
Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.SetNewCaption(const Value: string);
begin
if FCaption <> Value then
begin
Timer1.Enabled := False;
FCaption := Value;
FPos := 0;
Caption := FCaption;
Timer1.Enabled := True
end
end;

procedure TForm1.Timer1Timer(Sender: TObject);
var
L: integer;
S: string;
begin
Timer1.Enabled := False;
try
L := Length(FCaption);
if FPos = L then FPos := 0;
Inc(FPos);
S := Copy(FCaption, FPos, L - FPos + 1);
if FPos > 1 then S := S + " " + Copy(FCaption, 1, FPos - 1);
Caption := S
finally
Timer1.Enabled := True
end
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
SetNewCaption(Edit1.Text)
end;

end.



Romik   (2002-03-21 22:44) [4]

>Юрий Зотов © (21.03.02 21:27)
Большое спасибо!!! Нечто подобное я и предполагал.




Форум: "Основная";
Поиск по всему сайту: delphimaster.net;
Текущий архив: 2002.04.01;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.041 c
14-287            Sir Alex              2002-02-04 19:44  2002.04.01  
DMFC 1.1.003a ( вот что значит конкуренция!)


1-155             SB.John               2002-03-21 12:47  2002.04.01  
как узнать сколько памяти занимает какой-либо объект?


6-260             KaPaT                 2002-01-20 01:39  2002.04.01  
Очень простой вопрос!


1-93              Ahd                   2002-03-19 11:31  2002.04.01  
Диметрия


1-172             SlavaLamer            2002-03-19 14:55  2002.04.01  
Opendialog