Create graphical transparent analog clock dynamically
This tutorial demonstrates how to create graphical transparent analog clock computer screen.
Bookmark:
Create graphical transparent analog clock dynamically
By using some basic trigonometric calculation we can find the drawing coordinates for each needle in analog clock. Hours, minutes and seconds converts to their respective coordinates to draw lines for clock needles. To rotate needles we need to first remove the previous needle from screen and then draw the new one with new coordinates. To erase previous one we set canvas pen mode to XOR.
To create transparent form we simply set form brush style to bsClear.
Here is the procedure to draw the nubers for the circle on a circular path.
procedure TForm1.ClockFrame(Sender: TObject); Var A, R, Xo, Yo, X, Y : Integer; Begin { Set center point } Xo:=Width Div 2; Yo:=Height Div 2; R:=Yo-30; { Set font properties } Canvas.Font.Style:=[fsBold]; Canvas.Font.Name:='TimesNewRoman'; { Set font background color to transparent . . . } Canvas.Brush.Style:=bsClear; { Display numbers in a circle from 1 to 12 } Canvas.Font.Size:=40; Canvas.Font.Color:=clBlack; For A:=1 to 12 Do Begin X:=Xo+Round(R*Sin(30*A*Pi/180)); Y:=Yo-Round(R*Cos(30*A*Pi/180))-20; Canvas.TextOut(X,Y,IntToStr(A)); End; Canvas.Font.Size:=35; Canvas.Font.Color:=clYellow; For A:=1 to 12 Do Begin X:=Xo+Round(R*Sin(30*A*Pi/180)); Y:=Yo-Round(R*Cos(30*A*Pi/180))-20; Canvas.TextOut(X,Y,IntToStr(A)); End; End;
This one make the transparent form at startup.
procedure TForm1.FormCreate(Sender: TObject); begin FirstDraw:=True; { Set Form background to transparent } Brush.Style:=bsClear; end;
These procedures use to close the program if any key or mouse button press.
procedure TForm1.FormKeyDown(Sender: TObject; var Key: Word; Shift: TShiftState); begin { Close the program if any key is pressed . . . } Close; end; procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin { Close the program if mouse click . . . } Close; end;
Download This Delphi Tutorials.
Download materials for this article (Delphi - Tutorials)
transparent-analog-clock.zip
File size: 6 KB, File type: zip
Total downloads: 1207, Upload date: February 10 - 2009
transparent-analog-clock-exe.zip
File size: 192 KB, File type: zip
Total downloads: 888, Upload date: February 10 - 2009
silpa :: July 24-2009 :: 05:26 AM
send codings for analog clock in vb.net
Anas :: March 01-2011 :: 10:49 AM
please i like how you are given a good idea so please ill want you to send the correct procedures so that i can create my own in visual basic 6.0 waiting for you thanks.