program clock; uses Graph, Crt, DOS; var x1,x2,x3,y1,y2,y3,xt, yt:integer; {координаты} n:real; color, i,b:byte; {цвет и счетчики циклов} s:string; {чтобы рисовать текст} Gm, Gd:Integer; c,m,h, hund:word; begin Gd:=Detect; InitGraph(Gd,Gm,''); If GraphResult <> grOk then Halt(1); cleardevice; for i:=1 to 12 do begin {"рисование" циферблата} xt:=115 + round(100*sin(6.28*30*i/360)); yt:=115 - round(100*cos(6.28*30*i/360));
MoveTo(xt,yt); SetColor(lightBlue); SetTextStyle(DefaultFont, HorizDir, 1); { CharSize = 1 } SetTextJustify(LeftText, TopText); str(i,s); OutTextXY(xt,yt,s); end;
gettime(h, m, c, hund); Процедура для работы с датой и временем, возвращает текущее время, установленное в операционной системе.
x1:=115+round(90*sin((c*6+270)*Pi/180)); y1:=115-round(90*cos((c*6+270)*Pi/180)); x2:=115+round(60*sin((m*6+270)*Pi/180)); y2:=115-round(60*cos((m*6+270)*Pi/180)); x3:=115+round(40*sin((h*6+270)*Pi/180)); y3:=115-round(40*cos((h*6+270)*Pi/180));
repeat {стираем старое - рисуем чёрным цветом} SetColor(BLACK); SetLineStyle(0,0,3); MoveTo(120,120); LineTo(x1,y1); SetLineStyle(0,0,3); MoveTo(120,120); LineTo(x2,y2); setlineStyle(0,0,3); MoveTo(120,120); LineTo(x3,y3);
{"рисование" минутной, секундной, и часовой стрелки} gettime(h, m, c, hund); x1:=115+round(90*sin((c*6+270)*Pi/180)); y1:=115-round(90*cos((c*6+270)*Pi/180)); x2:=115+round(60*sin((m*6+270)*Pi/180)); y2:=115-round(60*cos((m*6+270)*Pi/180)); x3:=115+round(40*sin((h*6+270)*Pi/180)); y3:=115-round(40*cos((h*6+270)*Pi/180)); SetColor(red); SetLineStyle(0,0,3); MoveTo(120,120); LineTo(x1,y1);
{minutnay strelka} SetColor(White); SetLineStyle(0,0,3); MoveTo(120,120); LineTo(x2,y2);
{chasovay strelka} SetColor(Green); setlineStyle(0,0,3); MoveTo(120,120); LineTo(x3,y3);
Delay(50); until KeyPressed; Readln; CloseGraph end.
|
|
|
Что сделать нужно?)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
Там часы в левой части экрана, их нужно передвинуть на центр!!
|
|
|
Ну смотри: Верхний левый угол - это координаты (0;0) начни рисовать всё не с (0;0) а чуть ранее центра:)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|
Спасибо!) Слушай можешь еще сказать как туда заставку добавить?? Ну типо "Для запуска часов нажмите клавишу...."??
|
|
|
writeln('Для запуска часов нажмите клавишу ENTER'); readln;
или
writeln('Для запуска часов нажмите клавишу ENTER'); readkey;
)) Для проверки введён ли энтер добавь чаровскую переменную и после if charovskayaperemennaya=#13 then начинаем работу часов)
Нужна помощь? Сюда: vkontakte.ru/berestovskiy
|
|
|