Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cómo hacer un reloj de Windows usando Delphi?

¿Cómo hacer un reloj de Windows usando Delphi?

Cuando este programa se esté ejecutando, aparecerá un reloj electrónico en el escritorio.

1. Propiedades básicas del objeto:

Objeto Form1: TForm1 Left = 914 Top = -3 BorderIcons = [] BorderStyle = bsNone Caption = 'Form1' ClientHeight = 108 ClientWidth = 100 Color = clBackground TransparentColor = True Font.Charset = DEFAULT_CHARSET Font.Color = clWindowText Font.Height = -10 Font.Name = 'MS Sans Serif' Font.Name = 'MS Sans Serif' Font.Height = -10 Font.Name = 'MS Sans Serif' 2.Style = [] OldCreateOrder = False PopupMenu = PopupMenu1 OnCreate = FormCreate OnPaint = formpaint OnResize = FormResize PixelsPerInch = 96 TextHeight = 13 objeto PopupMenu1: TPopupMenu Izquierda = 80 Superior = 72 objeto N1: TMenuItem Caption = ' Salir ' OnClick = N1Click objeto final Timer1: TTimer Left = 48 Top = 40 objeto final Timer2: TTimer OnTimer = Timer2Timer Left = 80 Top = 24 endendend

2.

unidad Unidad1;las interfaces utilizan Windows, Mensajes, SysUtils, Variantes.SysUtils, Variantes, Clases, Gráficos, Controles, Formularios, Diálogos, StdCtrls, ExtCtrls, Menús;tipo TForm1 = clase(TForm) PopupMenu1: TPopupMenu N1.TMenuItem; Temporizador1: Temporizador1: TTimer; Temporizador2: programa Timer2Timer (Remitente: TObject); programa formpaint (Remitente: TObject); programa FormResize (Remitente: TObject); Declaraciones privadas } hora, minuto, segundo: palabra; viejo minuto, viejo segundo: palabra; privado {declaración privada} radio, backradius: entero; ángulo: real procedimiento dibujar segundo);

end;var Form1:TForm1; implementación{$R *.dfm}procedimiento Tform1.Sender:end; procedimiento TForm1.Sender: TObject; var hsec:word; comenzar antiguosegundo:=segundo; ,minuto,segundo,hsec); dibujarsegundo; finalizar; procedimiento TForm1.Remitente: TObject;procedimiento TForm1.Sender: TForm1.formpaint(Remitente: var ángulo:real; integer;begin xcenter:=clientwidth div 2; ycenter:=clienttheight div 2; si xcenter>ycenter entonces radio:=ycenter-10 else radio:=xcenter-10; :=pmcopy; lienzo.Brush.canvas.Pen.Width:=2; canvas.Pen.Color:=clred; ángulo:=2*pi*( minuto+45)/60; div 100,0,angle); {Dibujar manecilla de hora} canvas.Pen.Width:=4; canvas.Pen.Color:=clred; ángulo:=2*pi*( minuto+45)/60Color:=clred; :=2*pi*(hora +9+minuto/60)/12; drawhand(xcenter,ycenter,radius*70 div 100,0,angle); {dibujar segundero} canvas.Pen.Width :=1; Pen.Color:=clred; canvas.Pen.Mode:=pmcopy; {dibujar segunda mano} canvas.Pen.Mode:=pmcopy; pmcopy programa tform1.drawhand(xcenter, ycenter,radius, atrás) ;fin;procedimiento tform1.ycenter,radio,backradius:integer;ángulo:real);comenzar lienzo.Pen.Mode:=pmcopy;ángulo:=2*pi*(segundo+45)/60MoveTo(xcenter-round( backradius* cos(angle)),ycenter-round(backradius*sin (angle)));canvas.LineTo(xcenter+round(radius*cos(angle)),ycenter+round(radius*sin(angle))); finalizar; procesar tform1.Drawsegundo; var ángulo,oldangle:real; comenzar dibujar varsegundo,oldangle:real; comenzar oldangle:=2*pi*(oldsegundo+45)/60;

,radio,radio*30 div 100,ángulo antiguo); ángulo:=2*pi*(segundo +45)/60; dibujarmano(xcentro,ycentro,radio,radio*30 div 100,ángulo final); /p>

Este programa se ejecuta en window98+delphi6.