AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Probleme beim Einbau des Timers

Ein Thema von aaaaaaaaaa_10 · begonnen am 15. Jul 2009 · letzter Beitrag vom 15. Jul 2009
Antwort Antwort
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#1

Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 12:56
Hallo,
habe folgende Prozedur :

Delphi-Quellcode:
procedure TMomFiles.DreiSekDateiFuellen(const Filename: string);
var
  LogDatei, DatName, temp1, temp2: string;
  i : integer;
  Mom, Sek: TStringList;
begin
  DatName := extractfilepath(application.exename)+'Mom3sek_'+Kennung+'.txt';
  Mom := TStringList.Create;
  Sek := TstringList.Create;
  try
    LogDatei := extractfilepath(application.exename)+'mom'+Kennung+'.log';
    Mom.LoadFromFile(Logdatei);
    Sek.Add(Mom[0]);
    temp1 := Mom.Strings[Mom.Count-1];
    temp2 := Sek.Strings[Sek.Count-1];
    if temp1 <> temp2 then [b]die letzte Zeile einer vorhandenen Datei soll immer (bei Veränderungen)in die neue
    begin Datei hinten angehängt werden[/b]
        Sek.Add(Mom[Mom.Count-1]);
    end;
    Sek.SaveToFile(DatName);
  finally
    Sek.Free;
    Mom.Free;
  end;
end;
Wie realisiere ich das "Testen auf Veränderungen der letzten Zeile" mit einem Timer? Weiß nicht wie ich da anfangen kann.
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 13:28
Hi,

also du erstellst dir nen Timer den du erstmal auf Enabled:=False setzt und fügst dann deinen Code in das OnTimer-Event ein.
Pseudocode wäre:

OnTimer
begin
wenn letzte_Zeile_alt.Text <> letzte_Zeile_neu.Text dann
//letzte zeile wurde geändert
begin
//deine Reaktion darauf
end;
end;

Evl. den Intervall noch nach belieben anpassen.

EDIT: natürlich den Timer auch wieder auf Enabled:=True setzen wenn es überprüfen soll.


Gruß
Stormy
  Mit Zitat antworten Zitat
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#3

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 13:34
Ich habe aber keine Form,kann ich trotzdem einfach Timer1 : TTimer einfügen?
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 13:40
Kurz ja.
Ansonsten kannst du auch eine Schleife dafür benutzen (while do / repeat until) oder eine Funktion sich selber aufrufen lassen (Rekursion) was ich dann aber in einen anderen Thread auslagern würde. Um den Intervall zu setzen kannst du z.B. Sleep verwenden.


Gruß
Stormy
  Mit Zitat antworten Zitat
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#5

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 13:46
Das ist meine TimerProcedure:

Delphi-Quellcode:
procedure TMomFiles.MyTimerEvent;
var
  Sek, Mom : TStringList;
  DatName, LogDatei, temp1, temp2 : string;
begin
  DatName := extractfilepath(application.exename)+'Mom3sek_'+Kennung+'.txt';
  LogDatei := extractfilepath(application.exename)+'mom'+Kennung+'.log';
  Mom := TStringList.Create;
  Sek := TStringList.Create;
  try
    Mom.LoadFromFile(Logdatei);
    Sek.LoadFromFile(DatName);
    temp1 := Mom.Strings[Mom.Count-1];
    temp2 := Sek.Strings[Sek.Count-1];
    if temp1 <> temp2 then
    begin
        ShowMessage('verschiedene Strings');
        Sek.Add(Mom[Mom.Count-1]);
    end;
    Sek.SaveToFile(DatName);
  finally
    Sek.Free;
    Mom.Free;
  end;
end;
Die will ich jetzt aber in einer anderen Unit aufrufen mit :

Delphi-Quellcode:
MyTimer := TTimer.Create(nil);
  MyTimer.Enabled := True;
  MyTimer.Interval := 1000;
  MyTimer.OnTimer := MomFiles.MyTimerEvent;
//Fehler : Inkompatible Typen 'Lister der parameter unterschiedliche'
  Mit Zitat antworten Zitat
aaaaaaaaaa_10
(Gast)

n/a Beiträge
 
#6

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 14:00
Ups, was vergessen

procedure TMomFiles.MyTimerEvent; muss ja zu

procedure TMomFiles.MyTimerEvent(Sender:TObject); werden.
  Mit Zitat antworten Zitat
Stormy

Registriert seit: 8. Okt 2005
Ort: LPZ
73 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: Probleme beim Einbau des Timers

  Alt 15. Jul 2009, 14:01
War schon am absenden aber dir ist es schneller aufgefallen.


Gruß
Stormy
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:28 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