Znam trochę, jak robić kolory w konsoli Win32 C++. Ale to nie jest naprawdę skuteczne. Na przykład:C++ Win32 Console Color
SYSTEM("color 01")
Spowolnienie procesu. Również:
HANDLE h = GetStdHandle (STD_OUTPUT_HANDLE);
WORD wOldColorAttrs;
CONSOLE_SCREEN_BUFFER_INFO csbiInfo;
/*
* First save the current color information
*/
GetConsoleScreenBufferInfo(h, &csbiInfo);
wOldColorAttrs = csbiInfo.wAttributes;
/*
* Set the new color information
*/
SetConsoleTextAttribute (h, FOREGROUND_RED);
Działa świetnie, ale nie ma zbyt wielu kolorów. Ponadto, FOREGROUND_RED
jest ciemno-czerwony.
Więc co chcę zapytać, czy nie istnieje sposób, jak zestaw właściwości CLR Console::ForegroundColor
, więc możesz użyć dowolnego koloru z enum ConsoleColor?
Czy próbowałeś ustawienie Flaga 'FOREGROUND_INTENSITY' zmienia kolor na jasny? Na przykład: 'SetConsoleTextAttribute (h, FOREGROUND_RED | FOREGROUND_INTENSITY)' –
To działa, ale wciąż zastanawiam się, czy jest jakiś sposób, aby uzyskać więcej kolorów, może z paletą? –
Konsola obsługuje tylko 16 kolorów, które są tworzone przez połączenie FOREGROUND_RED, FOREGROUND_BLUE, FOREGROUND_GREEN i FOREGROUND_INTENSITY. – riv