14. november 2002 - 19:49Der er
29 kommentarer og 2 løsninger
fejl i delphisource
Hvad er fejlen her ???
procedure Txit.TimerTimer(Sender: TObject); var C: Cardinal; begin C := GetTickCount - Tid; if C >= Forskel then begin timer.Enabled := False; ShowMessage('Tiden er gået!'); end else begin xit.lbl.caption := Format('%d dage %d timer %d minutter %d sekunder %d milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]); end;
end;
Den besked med "tiden er gået" virker, det jeg ikke forstår er hvorfor jeg ikke får min caption til at virke...
Støv, fibre og metalliske partikler kan påvirke både uptime, levetid og driftssikkerhed. Derfor arbejder flere datacentre systematisk med contamination control.
begin Tid := GetTickCount; Forskel := xit.Timer.Interval; end;
procedure Txit.TimerTimer(Sender: TObject); var C: Cardinal; begin C := GetTickCount - Tid; if C >= Forskel then begin timer.Enabled := False; Close; end else begin xit.lbl.caption := Format('%d dage %d timer %d minutter %d sekunder %d milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]); end;
Tilbage til dit spørgsmål -> Så vidt jeg kan se fungerer dit program som et æggeur og xit.lbl.caption viser tidsstatus.
Prøv med: ---------------------- implementation
{$R *.dfm}
var Forskel, Tid : Cardinal;
procedure Txit.start1Click(Sender: TObject); begin Tid := GetTickCount; Forskel := xit.Timer.Interval; Timer.Enabled := true; end;
procedure Txit.TimerTimer(Sender: TObject); var C: Cardinal; begin C := GetTickCount - Tid; if C >= Forskel then begin timer.Enabled := False; Close; end else begin xit.lbl.caption := Format('%d dage %d timer %d minutter %d sekunder %d milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]); end;
procedure Txit.TimerTimer(Sender: TObject); var C: Cardinal; begin C := GetTickCount - Tid; if C >= Forskel then begin timer.Enabled := False; Close; end else begin xit.lbl.caption := Format('%u dage %u timer %u minutter %u sekunder %u milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]); end;
tjae det duer sikkert også... men det er ikke de linier vi skal konsentrere os om... erstattede lige
xit.lbl.caption := Format('%u dage %u timer %u minutter %u sekunder %u milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]);
Det kunne jo være at forskel er sat til for lidt! :)
Det er jo milisekunder, så prøv en gang at sætte den til 10000!
Jeg skal også nok hjælpe dig i dit andet spørgsmål... Hende den dejlige var bare på besøg i går, så der var vigtigere og sjovere ting at tage sig til end Eksperten! ;)
øhhh har lige sat dette ind i en button for at se om det virkede... det gør det ikke:
xit.lbl.caption := Format('%d dage %d timer %d minutter %d sekunder %d milisekunder', [C div (1000*60*60*24), C div (1000*60*60) mod 24, (C div (1000*60)) mod 60, (C div 1000) mod 60, C mod 1000]);
Det har jeg da lavet et indlæg i... Alt kode er postet... Kan godt smide det op på min server, hvis du gerne vil hente koden... Ellers kan jeg sende den til dig! ;)
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.