= 소스 파일 = == main.cpp == === 말그대로 메인입니다.. === {{{ #include #include "now_time.h" #include "alarmsetting.h" #include "cho.h" void main() { while(1) { now_time a; a.print_now_time(); system("cls"); cho b; b.setwatch(); system("cls"); alarmsetting c; c.alm_set(); } } }}} == now_time.cpp == === 시간을 표시합니다 === {{{ /*********************************************************** * ////////현재시각표시////////// * * 아 진짜 고생 많이했다 ㅋㅋㅋㅋ * 숫자 크기 정하느라 황금비율 찾아봤다능... ;;( 1 : 1.618 이니까 5:8 이라능...) * 숫자 디자인 한참 고민했다능... ;; * 숫자 띄우느라 애먹었다능... ;; * 내 노력을 알아달라능...ㅡ,.ㅜ;; * By 컴공의 자랑 ***********************************************************/ #include #include #include #include #include #include "now_time.h" using namespace std; typedef enum { NOCURSOR, SOLIDCURSOR, NORMALCURSOR } CURSOR_TYPE; extern int ah; extern int am; extern int as; void gotoxy(int x, int y) { COORD Cur; Cur.X=x; Cur.Y=y; SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),Cur); } void setcursortype(CURSOR_TYPE c) { CONSOLE_CURSOR_INFO CurInfo; switch (c) { case NOCURSOR: CurInfo.dwSize=1; CurInfo.bVisible=FALSE; break; case SOLIDCURSOR: CurInfo.dwSize=100; CurInfo.bVisible=TRUE; break; case NORMALCURSOR: CurInfo.dwSize=20; CurInfo.bVisible=TRUE; break; } SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&CurInfo); } void now_time::print_now_time() { char arr[10][8][16]={ // digit 노가다 {{" ■■■ "}, {"■ ■"}, {"■ ■"}, {"■ ■"}, // 디자인 수정의 편의성을 위해 세로로 길게 씀. {"■ ■"}, {"■ ■"}, {"■ ■"}, {" ■■■ "}}, {{" ■ "}, {" ■■ "}, {"■ ■ "}, {" ■ "}, {" ■ "}, {" ■ "}, {" ■ "}, {"■■■■■"}}, {{" ■■■ "}, {"■ ■"}, {"■ ■"}, {" ■"}, {" ■ "}, {" ■ "}, {" ■ "}, {"■■■■■"}}, {{" ■■■ "}, {"■ ■"}, {" ■"}, {" ■■ "}, {" ■"}, {" ■"}, {"■ ■"}, {" ■■■ "}}, {{" ■ "}, {" ■■ "}, {" ■ ■ "}, {"■ ■ "}, {"■■■■■"}, {" ■ "}, {" ■ "}, {" ■ "}}, {{"■■■■■"}, {"■ "}, {"■ "}, {" ■■■ "}, {" ■"}, {"■ ■"}, {"■ ■"}, {" ■■■ "}}, {{" ■■■ "}, {"■ "}, {"■ "}, {"■■■■ "}, {"■ ■"}, {"■ ■"}, {"■ ■"}, {" ■■■ "}}, {{"■■■■■"}, {"■ ■"}, {" ■"}, {" ■ "}, {" ■ "}, {" ■ "}, {" ■ "}, {" ■ "}}, {{" ■■■ "}, {"■ ■"}, {"■ ■"}, {" ■■■ "}, {"■ ■"}, {"■ ■"}, {"■ ■"}, {" ■■■ "}}, {{" ■■■ "}, {"■ ■"}, {"■ ■"}, {" ■■■■"}, {" ■"}, {" ■"}, {" ■"}, {" ■■■ "} } }; setcursortype(NOCURSOR); //커서를 숨긴다. time_t a; tm* b; int h,m,s; while(1){ char key; if(kbhit()) { key=getch(); if(key=='1') break; } system("cls"); gotoxy(24,2); // 땡땡( : ) 입력 cout<<"□"; gotoxy(24,5); cout<<"□"; gotoxy(52,2); cout<<"□"; gotoxy(52,5); cout<<"□"; time(&a); //시스템 시간 받아오기 b=localtime(&a); h = b->tm_hour; //시 m = b->tm_min; //분 s = b->tm_sec; //초 if((ah == h)&&(am==m)&&(as==s)) { printf("\a\a\a"); } int h10 = h/10; //시,분,초 각각의 10, 1의 자리 구하기 int h1 = h%10; int m10 = m/10; int m1 = m%10; int s10 = s/10; int s1 = s%10; for(int x=0;x<8;x++){ //위에서부터 한줄씩, 총 6줄 1초마다 출력 gotoxy(0,x); cout<