Einzelnen Beitrag anzeigen

Molzer

Registriert seit: 7. Dez 2008
70 Beiträge
 
#13

Re: text mit größe des fensters ändern

  Alt 22. Jan 2009, 18:38
habe eine uhr gemacht (teile kopiert) und ein paar probleme!!
meine striche passen sich dem fenster an, meine uhr natürlich nicht, wie kann ich das lösen?
warum muss ich in der zeile " decodetime(now,hour,min,sec,msec);" now eingeben, gibt es andere möglichkeiten?

Delphi-Quellcode:
procedure TForm2.FormResize(Sender: TObject);
begin
mx := Width div 2;
my := Height div 2;
refresh;

with canvas do begin
  pen.Width:=3;
  pen.Color:=clblack;
  moveto(mx,my-width div 4);
  lineto(mx,my-width div 5);

  pen.Width:=3;
  pen.Color:=clblack;
  moveto(mx-width div 4,my);
  lineto(mx-width div 5,my);

  pen.Width:=3;
  pen.Color:=clblack;
  moveto(mx+width div 4,my);
  lineto(mx+width div 5,my);

  pen.Width:=3;
  pen.Color:=clblack;
  moveto(mx,my+width div 4);
  lineto(mx,my+width div 5);


end;
end;
procedure TForm2.Timer1Timer(Sender: TObject);
var winkel : real;
    x, y, r, i : Integer;
    hour, min, sec, msec : Word;
begin

 Form2.Caption:=TimeToStr(Now);
 decodetime(now,hour,min,sec,msec);
 r:=60;

// Sekundenzeiger
 winkel:=sec* ((2*pi) / 60) - pi/2;

 x:=Trunc(cos(winkel)*r);
 y:=Trunc(sin(winkel)*r);

 x:=x+(mx);
 y:=y+(my);

 Canvas.Pen.Color:=clblack;
 Canvas.Pen.Width:=1;
 Canvas.MoveTo(mx,my);
 Canvas.LineTo(x,y);

//Minutenzeiger
 winkel:=min* ((2*pi) / 60) - pi/2;

 x:=Trunc(cos(winkel)*r*0.9);
 y:=Trunc(sin(winkel)*r*0.9);

 x:=x+(mx);
 y:=y+(my);

 Canvas.Pen.Width:=2;
 Canvas.MoveTo(mx,my);
 Canvas.LineTo(x,y);

//Stundenzeiger
 IF hour>12 THEN hour:=hour-12;
 winkel:=(hour*(2*pi) / 12) + (min*(2*pi) / 720) - pi/2;

 x:=Trunc(cos(winkel)*r*0.6);
 y:=Trunc(sin(winkel)*r*0.6);

 x:=x+(mx);
 y:=y+(my);

 Canvas.Pen.Width:=3;
 Canvas.MoveTo(mx,my);
 Canvas.LineTo(x,y);
end;
end.
Meine Version:
Borland® Delphi® für Microsoft® Windows™ Version 10.0.2288.42451 Update 2 Copyright © 2005 Borland® Software Corporation.
  Mit Zitat antworten Zitat