AGB  ·  Datenschutz  ·  Impressum  







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

String mit TTimer

Ein Thema von Gehstock · begonnen am 28. Dez 2006 · letzter Beitrag vom 29. Dez 2006
Antwort Antwort
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#1

String mit TTimer

  Alt 28. Dez 2006, 19:58
also habe einen TEdit in dem die ausgelesene zeit eines telefons angezeigt wird z.B. 20:56:26
wie schaffe ich es das diese zeit im Programm weiterläuft sicherlich in einen ttimer
Marcel
  Mit Zitat antworten Zitat
Blackheart

Registriert seit: 4. Mai 2005
846 Beiträge
 
Delphi 7 Enterprise
 
#2

Re: String mit TTimer

  Alt 28. Dez 2006, 20:03
Wie Liest Du denn die Zeit des Telefons aus.
Blackheart
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#3

Re: String mit TTimer

  Alt 28. Dez 2006, 20:08
Delphi-Quellcode:
s:= 'AT+CCLK?';
    SendCMD;
    Memo1.Lines.Add(Result1);
    zeit:=Memo1.Lines[33];
    datum:=Memo1.Lines[33];
   delete(zeit,1,17);
   delete(zeit,9,15);
   delete(datum,1,8);
   delete(datum,9,15);
       jahr:='20'+datum[1]+datum[2];
        monat:=datum[4]+datum[5];
         tag:=datum[7]+datum[8];
    LabeledEdit1.text:=tag+'.'+monat+'.'+jahr;
    Edit2.Text:=zeit;
wobei das datum nicht weiterlaufen muss
Marcel
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#4

Re: String mit TTimer

  Alt 28. Dez 2006, 20:13
Hallo,

der Timer wird nur zur Aktualisierung der Anzeige gebraucht, die ausgelesene Zeit des cell phone sollte in einer Variable dtRead vom Typ TDateTime gespeichert werden. Für die Berechnung eines eventuellen Versatzes wird beim Auslesen auch die lokale Zeit dtNow (:= Now) gespeichert. Im OnTimer-Event wird dann einfach der Anzeigewert neu berechnet:

ZeitPanel.Caption := TimeToStr(dtRead + Now - dtNow); Freundliche Grüße
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#5

Re: String mit TTimer

  Alt 28. Dez 2006, 20:45
läuft aber mir fehlen da jetzt 2 stunden und 15 minuten also genau die zeit bis 0 Uhr
Edit
dtNow is mir grad nicht so klar
ausgabe erfolgt ja so
Zitat:
+CCLK: "06/12/28,22:04:30+04"
dann währe dtnow
Zitat:
22:04:30+04
wenn ich dich richtig verstehe
Marcel
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#6

Re: String mit TTimer

  Alt 28. Dez 2006, 21:38
Hi,

der bei +CCLK zurückgegebene Wert muss von dir interpretiert und als dtRead gespeichert werden. dtNow bekommt den Wert Now zugewiesen, und zwar genau zu dem Zeitpunkt wenn dir CCLK geliefert wird. Der Ausdruck Now - dtNow liefert in OnTimer den Korrekturwert bei abweichenden Zeiten zwischen dem cell phone und dem PC.

Gute Nacht
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#7

Re: String mit TTimer

  Alt 28. Dez 2006, 21:44
Danke Habs selber hinbekommen den Code zeig ich jetzt nich is bestimmt n ziemliches kuddelmuddel


Also danke nochmal
Marcel
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#8

Re: String mit TTimer

  Alt 29. Dez 2006, 19:08
Nee zu früh gefreut klappt doch nicht es läuft die aktuielle zeit durch

Delphi-Quellcode:
function TForm1.Info: Boolean;
var
zeit:string;
datum:string;
jahr:string;
monat:string;
tag:string;
zeit2:string;
stunde:string;
minute:string;
sekunde:string;
versatz:string;
begin
Progressbar1.Position:=10;
 Connect1.Tag := 1;
    StatusBar.Panels[0].text:='Verbunden mit '+ComPort.Text;
      Connect1.Caption := 'Trennen';
        s:= 'AT+CCLK?';
    SendCMD;
    Memo1.Lines.Add(Result1);
    zeit:=Memo1.Lines[33];
    datum:=Memo1.Lines[33];
    delete(zeit,1,17);
    delete(zeit,9,15);
    delete(zeit2,1,17);
    delete(zeit2,12,15);
    delete(datum,1,8);
    delete(datum,9,15);
    jahr:='20'+datum[1]+datum[2];
    monat:=datum[4]+datum[5];
    tag:=datum[7]+datum[8];
    LabeledEdit1.text:=tag+'.'+monat+'.'+jahr;
    dtread:=strtotime(Zeit);
    Stunde:=zeit[1]+zeit[2];
    minute:=zeit[4]+zeit[5];
    sekunde:=zeit[7]+zeit[8];
    versatz:=zeit[10]+zeit[11];
    zeit2:=stunde+':'+minute+':'+inttostr(strtoint(sekunde)+(strtoint(versatz)));
    dtnow:=strtotime(Zeit2);
    Progressbar1.Position:=100;
    memo1.lines.add(zeit2);
  end;
Delphi-Quellcode:
procedure TForm1.Timer3Timer(Sender: TObject);
begin
Edit2.Text := TimeToStr(dtRead + Now - dtNow);
end;

vieleicht könnte mir noch jemand nen denkanstoß geben
Marcel
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#9

Re: String mit TTimer

  Alt 29. Dez 2006, 20:03
Hallo,

hier das wesentliche in Kürze:

Delphi-Quellcode:
type
  TDemoForm = class(TForm)
    Button: TButton;
    Edit: TEdit;
    Clock: TTimer;
    procedure ClockTimer(Sender: TObject);
    procedure ButtonClick(Sender: TObject);
  private
    dtStart: TDateTime;
    dtClock: TDateTime;
  end;

var
  DemoForm: TDemoForm;

implementation

{$R *.dfm}

procedure TDemoForm.ClockTimer(Sender: TObject);
begin
  Caption := TimeToStr(dtClock + Now - dtStart);
end;

procedure TDemoForm.ButtonClick(Sender: TObject);
var
  i: Integer;
begin
  dtStart := Now;
  i := Succ(Pos(',', Edit.Text));
  dtClock := StrToTime(Copy(Edit.Text, i, 8));
end;
Lass dich nicht dadurch verwirren, dass ich meine Hilfsvariablen dtRead und dtNow umbenannt habe.

Freundliche Grüße
  Mit Zitat antworten Zitat
Gehstock

Registriert seit: 28. Jan 2006
Ort: Görlitz / Sachsen
489 Beiträge
 
Delphi 2007 Professional
 
#10

Re: String mit TTimer

  Alt 29. Dez 2006, 20:28
ja jetzt gehts Danke
Marcel
  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 17:00 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