Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Князь Трех Море
0 / 0 / 0
Регистрация: 06.04.2013
Сообщений: 21
1

Создание аналоговых часов используя setactivpage и setvisualpage

22.05.2013, 17:45. Просмотров 441. Ответов 1
Метки нет (Все метки)

Здравствуйте.
Я в Borland C++ создал часы (консольная графика), идут нормально. На одной странице.
Но препод требует что бы было две видеостраницы- последовательно менялись. Как мне реализовать это же при помощи функций setactivepage и setvisualpage? Код прилагаю.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
#include <graphics.h>
#include <stdlib.h>
#include <stdio.h>
#include <dos.h>
#include <conio.h>
#include <bios.h>
#include <ctype.h>
#include <math.h>
int main(void)
{
char*Time;
int gdriver=DETECT,gmode;
int MaxX, MaxY;
int Radius=100;
struct time t;
initgraph(&gdriver,&gmode,"C:\\TC\\BGI");
MaxX=getmaxx();
MaxY=getmaxy();
for(int i=0, flag=0; flag!=27; i++)
{
if(bioskey(1)!=0) flag=toascii(bioskey(0));
gettime(&t);
setcolor(CYAN);
circle(MaxX/2, MaxY*0.4, Radius);
///sec///
setcolor(LIGHTCYAN);
line(MaxX/2, MaxY*0.4,
MaxX/2+0.95*Radius*cos((90-t.ti_sec*6)*M_PI/180),
MaxY*0.4-0.95*Radius*sin((90-t.ti_sec*6)*M_PI/180));
///min///
setcolor(LIGHTGREEN);
line(MaxX/2,MaxY*0.4,
MaxX/2+0.75*Radius*cos((90-t.ti_min*6)*M_PI/180),
MaxY*0.4-0.75*Radius*sin((90-t.ti_min*6)*M_PI/180));
///hour///
setcolor(LIGHTMAGENTA);
line(MaxX/2, MaxY*0.4,
MaxX/2+0.5*Radius*cos((90-t.ti_hour*30)*M_PI/180),
MaxY*0.4-0.5*Radius*sin((90-t.ti_hour*30)*M_PI/180));
sprintf(Time,"Current time is %d:%d:%d",t.ti_hour,t.ti_min,t.ti_sec);
settextjustify(CENTER_TEXT,CENTER_TEXT);
settextstyle(GOTHIC_FONT,HORIZ_DIR,3);
setcolor(YELLOW);
outtextxy(MaxX/2, MaxY*0.75, Time);
settextstyle(SMALL_FONT,HORIZ_DIR,5);
setcolor(RED);
outtextxy(MaxX/2, MaxY*0.95, "Press ESC to Exit");
delay(900);
clearviewport();
}
closegraph();
return 0;
}
Помогите пожалуйста, очень надо!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.05.2013, 17:45
Ответы с готовыми решениями:

Код аналоговых часов на с++
Проблема с localtime, подскажите, пожалуйста, что не так

Путник двигался t1 часов со скоростью v1, затем t2 часов- со скоростью v2 и t3 часов со скоростью v3. За какое время он одолел первую половину пути
Путник двигался t1 часов со скоростью v1, затем t2 часов- со скоростью v2 и t3...

Путник двигался t1 часов со скоростью v1, затем t2 часов - со скоростью v2 и t3 часов – со скоростью v3. За какое время он одолел половину пути? в с++
Путник двигался t1 часов со скоростью v1, затем t2 часов - со скоростью v2 и t3...

Создание часов...подскажите пожалуйста
Не подскажите, как сделать часы.. я предполагаю сделать класс, который имел бы...

По дате рождения и сегодняшней дате посчитать количество прожитых часов (используя классы)
С помощью классов,создать программу, которая считает сколько часов вы прожили....

1
gazlan
3141 / 1917 / 311
Регистрация: 27.08.2010
Сообщений: 5,132
Записей в блоге: 1
22.05.2013, 18:24 2
setactivepage
Использование страниц
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.05.2013, 18:24

За A часов поездки на автомашине и P часов на поезде туристы проехали S км
За A часов поездки на автомашине и P часов на поезде туристы проехали S км....

Эмуляция аналоговых часов
всем привет! я не могу разобраться, что и как писать дальше мне нужно...

Циферблат аналоговых часов
Помогите пожалуйста добавить в данный код циферблат часов, а то простой круг не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru