////////////////////////////////////////////////////////////////// // // this is the implementation file for VC_conio // these are functions to imitate conio.h // under Visu // /////////////////////////////////////////////////////////////////// #include "VC_conio.h" void textcolor(int a) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); WORD _; switch(a) { case 0: //white text _ = FOREGROUND_BLUE | FOREGROUND_RED| FOREGROUND_GREEN | FOREGROUND_INTENSITY; break; case 1: // dark blue text _ = FOREGROUND_BLUE; break; case 2 : // dark green text _ = FOREGROUND_GREEN; break; case 3: // dark cyan text _ = FOREGROUND_GREEN | FOREGROUND_BLUE; break; case 4: // dark red text _ = FOREGROUND_RED; break; case 5 : // dark magenta text _ = FOREGROUND_RED | FOREGROUND_BLUE; break; case 6 : //dark brown text _ = FOREGROUND_RED | FOREGROUND_GREEN; break; case 7: //grey text _ = FOREGROUND_RED | FOREGROUND_BLUE |FOREGROUND_GREEN; break; case 8 : // light blue text _ = FOREGROUND_BLUE |FOREGROUND_INTENSITY; break; case 9 : // light green text _ = FOREGROUND_GREEN | FOREGROUND_INTENSITY; break; case 10 : // light cyan text _ = FOREGROUND_GREEN | FOREGROUND_BLUE | FOREGROUND_INTENSITY; break; case 11 : // light red text _ = FOREGROUND_RED | FOREGROUND_INTENSITY; break; case 12 : // light magenta text _ = FOREGROUND_RED | FOREGROUND_BLUE | FOREGROUND_INTENSITY; break; case 13 : // yellow text _ = FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_INTENSITY; break; default : _ = 0; } ForeGroundColor = _; _ += BackGroundColor; SetConsoleTextAttribute(winHan, _); } //======================================================================= //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //======================================================================= void textbackground(int a) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); WORD _; switch(a) { case 0: //white background _ = BACKGROUND_BLUE | BACKGROUND_RED| BACKGROUND_GREEN | BACKGROUND_INTENSITY; break; case 1 ://blue background _ = BACKGROUND_BLUE; break; case 2 : // dark green background _ = BACKGROUND_GREEN; break; case 3: // dark cyan background _ = BACKGROUND_GREEN | BACKGROUND_BLUE; break; case 4: // dark red background _ = BACKGROUND_RED; break; case 5 : // dark magenta background _ = BACKGROUND_RED | BACKGROUND_BLUE; break; case 6 : //dark brown background _ = BACKGROUND_GREEN | BACKGROUND_RED; break; case 7: //grey background _ = BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_GREEN; break; case 8 : // light blue background _ = BACKGROUND_BLUE | BACKGROUND_INTENSITY; break; case 9 : // light green background _ = BACKGROUND_GREEN | BACKGROUND_INTENSITY; break; case 10 : // light cyan background _ = BACKGROUND_GREEN | BACKGROUND_BLUE | BACKGROUND_INTENSITY; break; case 11 : // light red background _ = BACKGROUND_RED | BACKGROUND_INTENSITY; break; case 12 : // light magenta background _ = BACKGROUND_RED | BACKGROUND_BLUE | BACKGROUND_INTENSITY; break; case 13 : // yellow background _ = BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_INTENSITY; break; default : _ = 0; } BackGroundColor = _; _ += ForeGroundColor; SetConsoleTextAttribute(winHan, _); } //===================================================================== //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //===================================================================== void print_out(const char* ch) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); DWORD len = strlen(ch), NumOfCharWriten; WriteConsole(winHan, ch, len, &NumOfCharWriten, NULL); } //======================================================================= //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //======================================================================= void print_out(int n) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); char A[80]; sprintf(A, "%i", n); DWORD len = strlen(A), NumOfCharWriten; WriteConsole(winHan, A, len, &NumOfCharWriten, NULL); } //======================================================================= //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //======================================================================= void print_out(double d) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); char A[80]; sprintf(A, "%g", d); DWORD len = strlen(A), NumOfCharWriten; WriteConsole(winHan, A, len, &NumOfCharWriten, NULL); } //======================================================================= //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //======================================================================= inline void gotoxy (short x, short y) { winHan = GetStdHandle(STD_OUTPUT_HANDLE); COORD _ = { x, y }; SetConsoleCursorPosition (winHan, _); } //================================================================= //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //================================================================= void clrscr () { winHan = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO sInfo; GetConsoleScreenBufferInfo(winHan, &sInfo); DWORD len = sInfo.dwSize.X * sInfo.dwSize.Y; COORD _ = { 0, 0 }; FillConsoleOutputCharacter(winHan, ' ', len, _, &len); gotoxy (0, 0); } //===================================================================== //&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& //===================================================================== void clrol() { winHan = GetStdHandle(STD_OUTPUT_HANDLE); CONSOLE_SCREEN_BUFFER_INFO sInfo; GetConsoleScreenBufferInfo(winHan, &sInfo); DWORD len = sInfo.dwSize.X - sInfo.dwCursorPosition.X + 1; FillConsoleOutputCharacter(winHan, ' ', len, sInfo.dwCursorPosition, &len); }