Я искал бесчисленные форумы и веб-сайты, но я не могу найти ответ. Я пытаюсь использовать SetConsoleTextAttribute, но это влияет только на текст. Как я могу повлиять на весь экран, как команда color 1f
? Мой код:Как использовать SetConsoleTextAttribute C++
#include <iostream>
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <wincon.h>
using namespace std;
int main()
{
SetConsoleTitle("C++ CALCULATOR"); // Title of window
int x; // Decision
int a; // First Number
int b; // Second Number
int c; // Answer
HANDLE Con;
Con = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(Con, BACKGROUND_BLUE | FOREGROUND_BLUE | FOREGROUND_GREEN | FOREGROUND_RED);
cout << "CALCULATOR" << endl << endl;
cout << "1:ADDITION" << endl << "2:SUBTRACTION" << endl << "3:MULTIPLICATION";
cout << endl << "4:DIVISION" << endl << "5:EXIT" << endl;
cin >> x;
switch (x)
{
case 1: // Addition code
cout << endl << "ADDITION" << endl << "FIRST NUMBER:";
cin >> a;
cout << endl << "SECOND NUMBER:";
cin >> b;
c = a + b;
cout << endl << "ANSWER:" << c;
break;
case 2: // Subtraction code
cout << endl << "SUBTRACTION" << endl << "FIRST NUMBER:";
cin >> a;
cout << endl << "SECOND NUMBER:";
cin >> b;
c = a - b;
cout << endl << "ANSWER:" << c;
break;
case 3: // Multiplication code
cout << endl << "MULTIPLICATION" << endl << "FIRST NUMBER:";
cin >> a;
cout << endl << "SECOND NUMBER:";
cin >> b;
c = a * b;
cout << endl << "ANSWER:" << c;
break;
case 4: // Division code
cout << endl << "DIVISION" << endl << "FIRST NUMBER:";
cin >> a;
cout << endl << "SECOND NUMBER:";
cin >> b;
c = a/b;
cout << endl << "ANSWER:" << c;
break;
case 5: // Exit code
return 0;
}
}
Я уверен, что 'SetConsoleTextAttribute' не является частью языка C++ – Amadeus
Да, как @Amadeus сказал, что это будет часть консоли ... Какую консоль вы используете? –
[Что вы пробовали?] (Http://mattgemmell.com/what-have-you-tried/) Вы читали документы? [Первая ссылка в поиске Google] (https://msdn.microsoft.com/en-us/library/windows/desktop/ms686047%28v=vs.85%29.aspx) – Drop