Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Eine Delphi Form langsam automatisch scrollen lassen (https://www.delphipraxis.net/191051-eine-delphi-form-langsam-automatisch-scrollen-lassen.html)

Raven92 2. Dez 2016 12:46

Delphi-Version: 10 Seattle

Eine Delphi Form langsam automatisch scrollen lassen
 
Hallo mal an alle,

Hab da mal eine riesen bitte. Hab mit Delphi schon ein bissle erfahrung aber trotzdem totaler newbi noch.
Ich würde gern Eine Delphi Form langsam automatisch scrollen lassen und soll sie wieder zum anfang zurück springen.
Nun zur Frage : Iste es möglich und wenn ja WIE?

Vielen Dank im Vorraus für eure Mühen
MFG Daniel

Ps: Meine Delphi Version war nicht dabei hab hab Delphi DX 10.1 Berlin

Ghostwalker 2. Dez 2016 13:21

AW: Eine Delphi Form langsam automatisch scrollen lassen
 
Delphi-Quellcode:

type
  TForm59 = class(TForm)
    Panel1: TPanel;
    Timer1: TTimer;
    procedure Timer1Timer(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form59: TForm59;

implementation

{$R *.dfm}

procedure TForm59.Timer1Timer(Sender: TObject);
var
  rp : integer;
begin
  HorzScrollBar.Position := HorzScrollBar.Position+100;
  if (HorzScrollbar.Position > (HorzScrollbar.Range-self.width)) then
    HorzScrollBar.Position := 0;
end;
feddich :)

Was brauchst du ?:

Erstmal ein Formular (Form59). Dabei sollte die Eigenschaft "AutoScroll" auf true sein, so das er bei bedarf die Scrollbalken anzeigt.

Das Panel (Panel1) hat in diesem Beispiel eine wesentlich größere Breite (width), als das Formular.

So zeigt das Formular auch automatisch unten einen Scrollbalken an.

Dann brauchst du noch einen Timer (TTimer-Komponente).

Im Event onTimer hinterlegst du obige routine. Die macht jetzt nix anderes als den Scrollbalken jede
Sekunde (Default wert im TTimer 1000 Millisekunden) um 100 Px nach rechts zu verschieben. Danach wird noch geprüft ob die Position noch im Sichtbereich des Formulars ist (range-width); Wenn nicht wird die Position einfach wieder auf 0 gesetzt und er fängt von vorne an.

Raven92 4. Dez 2016 11:45

AW: Eine Delphi Form langsam automatisch scrollen lassen
 
Oh supi viele vielen dank.
Rettest mir wirklich den ar...!!!

Mfg Daniel


Alle Zeitangaben in WEZ +1. Es ist jetzt 00:39 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