Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Ticker erstellen (Text läuft durch) (https://www.delphipraxis.net/41182-ticker-erstellen-text-laeuft-durch.html)

dnk05 27. Feb 2005 15:51


Ticker erstellen (Text läuft durch)
 
Hallo!

Ich möchte ein Programm machen, bei dem ich einen Text in ein Memo-Feld eingebe, dann auf ein Button drücke.
Dabei möchte ich, dass sich ein neues Formular öffnet (bis dahin natürlich kein Problem), auf dem der eingegebene Text unten als Ticker angezeigt wird, d.h. durchläuft von rechts nach links.

(wer es sich nicht vorstellen kann: wie z.b. bei Wetten Dass der Abspann, wo auch nur der Text mit den Namen von rechts nach links im unteren Rand duchläuft)

Wär echt toll wenn ihr mir helfen könntet!

thx, dnk05

ReDoX 27. Feb 2005 15:57

Re: Ticker erstellen (Text läuft durch)
 
hi,
Herzlich willkomen in der Delphi-Praxis :dp:

Delphi-Quellcode:
var hilf,hilfbuchstabe: string;
begin
  hilf:= Form1.Caption;
  hilfbuchstabe:= hilf[1];
  delete(hilf,1,1);
  hilf:= hilf + hilfbuchstabe;
  Form1.Caption:= hilf;
  application.ProcessMessages;
end;
Das in das OnTimer event eines TTimer schreiben und fertig.

Mfg ReDoX

sniper_w 27. Feb 2005 16:11

Re: Ticker erstellen (Text läuft durch)
 
Delphi-Quellcode:
type
  TForm1 = class(TForm)
    Label1: TLabel;
    Timer1: TTimer;
    procedure FormCreate(Sender: TObject);
    procedure Timer1Timer(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
HorzScrollBar.Visible := False;
VertScrollBar.Visible := False;
DoubleBuffered := True;
Label1.Top := Height - Label1.Height - 28;
Label1.Left := Width + Label1.Width;

Timer1.Interval := 1;
Timer1.Enabled := True;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
 Label1.Left := Label1.Left - 2;
 if Label1.Left = -Label1.Width then Label1.Left := Width + Label1.Width;
end;
Das ist eine trivialle und schnelle Lösung.


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:34 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz