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 Schleife durch TTimer verlangsamen (https://www.delphipraxis.net/125901-schleife-durch-ttimer-verlangsamen.html)

The_Doomed 14. Dez 2008 13:01


Schleife durch TTimer verlangsamen
 
hi ich programmiere grad ein programm mit dem man einen Text durch transposition verschlüsselt
dazu soll ein text in eine Stringgrid eingetragen werden.

dies geschieht durch eine doppelte Schleife (Reihe, Spalte)

Das programm hat das ziel das verfahren zu veranschaulichen da aber der rechner die schleife enorm schnell ausließt
kann man die eintrageverfahren nicht beobachten
ich will die schleife jetzt durch einen timer verlangsamen

mein ansatz

Delphi-Quellcode:
for i := 0 to 4 do
  for j := 0 to 4 do
    begin
     table.Font.Size:=18;
     table.Cells[j,i]:=y[k];
   
//pause

      table.Cells[j,i]:='';
     table.Font.Size:=12;
     table.Cells[j,i]:=y[k];
     k:=k+1;

//pause

    end;
danke im vorraus

turboPASCAL 14. Dez 2008 13:45

Re: Schleife durch TTimer verlangsamen
 
Nicht mit einem Timer. Das wäre Verschwendung. Das geht auch einfacher.
Such mal hier in der DP bzw. deren Codelib nach: Hier im Forum suchenDelay DelayDelay

The_Doomed 14. Dez 2008 14:59

Re: Schleife durch TTimer verlangsamen
 
^^ hab grad festgestellt dass das mit ner stringgrid ni geht,
da die schleife erst ihre einträge macht, wenn sie alle eizustragenden werte ermittelt
hat muss es also über ein paar entsprechend angeordnete labels machen
(auf eine datenauslesende Tabelle (DBGrid hab ich keine lust, lohnt sich nicht))
aber bei den labels kann ich dann sleep wunderbar verwenden
danke

turboPASCAL 15. Dez 2008 08:00

Re: Schleife durch TTimer verlangsamen
 
Nimm Delay, sonst hängt dein Programm solange wie Sleep die App in die Pause zwingt.
Delay hat den Vorteil das Windowsnachrichten abgearbeitet werden.

The_Doomed 15. Dez 2008 15:26

Re: Schleife durch TTimer verlangsamen
 
habs schon bemerkt ^^
danke nochmal


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