16. juni 2006 - 22:19
Der er
2 kommentarer og
1 løsning
Tchart - vi tid på aksen
Hej
Jeg bruger en TChar på en form
Jeg har nogle data som er logget med 60 sekunder interval, som jeg ved startede 19:00:00.
Hvordan får jeg x-aksen til at starte kl 19:00 og så springe med 60 sekunder af gangen - altså hvordan får jeg det formateret rigtigt -lige nu kan jeg kun få det ud som et kommatal.
11. januar 2007 - 19:43
#2
Hej koonz,
häber du stadigväk fär mail om denne träd, da jeg meget gerne vil höre, hvordan du
löste opgaven - jeg har nemlig samme problemstilling i öjeblikket!
Tak, hvis du lige gider svare...
11. januar 2007 - 23:03
#3
Se nedenstående procedure - jeg tror den viser det du har brug for ;)
procedure TfrmMainCykelDagbog.pReadPolarData(const PolarFile: String);
var
Inifile : TInifile;
Data : TStringList;
str, strStartTime, Interval : String;
strTime: String;
i, startline : Integer;
Speed, Height : Double;
Time : TDateTime;
listitem : TListItem;
begin
pClearPolarTrends;
str := ExtractFileExt(PolarFile);
with chartHeart do
begin
Series[0].XValues.DateTime := True;
BottomAxis.Increment := DateTimeStep[ dtOneMinute ];
BottomAxis.ExactDateTime := True;
end;
with chartHeight do
begin
Series[0].XValues.DateTime := True;
BottomAxis.Increment := DateTimeStep[ dtOneMinute ];
BottomAxis.ExactDateTime := True;
end;
with chartSpeed do
begin
Series[0].XValues.DateTime := True;
BottomAxis.Increment := DateTimeStep[ dtOneMinute ];
BottomAxis.ExactDateTime := True;
end;
If str = '.hrm' then
begin
IniFile := TIniFile.Create(PolarFile);
Data := TStringList.Create;
strStartTime := copy(Inifile.ReadString('Params','StartTime',''),0,8);
Interval := copy(Inifile.ReadString('Params','Interval',''),0,8);
polarStatus.Panels[0].Text := 'Starttid : '+ strStartTime;
polarStatus.Panels[1].Text := 'Loginterval : '+ Interval;
polarStatus.Panels[2].Text := 'Max puls : '+ Inifile.ReadString('Params','MaxHR','');
polarStatus.Panels[3].Text := 'Hvile puls : '+ Inifile.ReadString('Params','RestHR','');
polarStatus.Panels[4].Text := 'Vægt : '+ Inifile.ReadString('Params','Weight','');
Time := StrToTime(strStartTime);
Data.LoadFromFile(PolarFile);
startline := 0;
for i := 0 to data.Count -1 do
If Data.Strings[i] = '[HRData]' then
Begin
startline := i+1;
//exit;
end;
if startline > 0 then
while not (data.Strings[startline] = '') AND not (startline = 0) do
begin
If not (startline = Data.count-1) then
begin
startline := startline +1;
str := data.Strings[startline];
strTime := DateTimeToStr(Time);
pExtractPolarData(str);
listitem := lstPolarData.Items.Add;
listitem.Caption := FormatDateTime('hh:mm:ss', Time);
Listitem.SubItems.Add(vHeart);
ListItem.SubItems.Add(vSpeed);
ListItem.SubItems.Add(vHeight);
chartHeart.Series[0].AddXY(Time,StrToInt(vHeart) ,'',clTeeColor);
Speed := (StrToFloat(vSpeed))/10;
chartSpeed.Series[0].AddXY(Time,Speed ,'',clTeeColor);
Height := StrToFloat(vHeight);
chartHeight.Series[0].AddXY(Time,Height ,'',clTeeColor);
Time := IncSecond(Time, StrToInt(Interval));
end
else
startline := 0;
end;
inifile.Free;
Data.Free;
end
else
MessageDlg('Forkert filtype - import af polar træningsfil afbrudt', mtError, [mbOK], 0);
end;