Welcome Guest ( Log In | Register )

Help | Search | Members | Calendar

 
Background Color, C++
« Next Oldest | Next Newest » Track this topic | Email this topic | Print this topic
observer
Posted: Dec 19 2007, 22:56

Brain Master

Group: Elite Member
Member No.: 802

Joined: June 25, 2004

Нашла, как можно изменить цвет текста, выводимого в консольном приложении (функция SetConsoleTextAttribute).
А как можно изменить цвет самого экрана?

--------------------
From the freckled hills to the steel and glass canyons...
 
    Top
arnix
Posted: Dec 21 2007, 01:22

Challenger

Group: Moderator
Member No.: 869

Joined: July 31, 2004

QUOTE (In the immortal words of observer, since Dec 19 2007, 22:56)
Нашла, как можно изменить цвет текста, выводимого в консольном приложении (функция SetConsoleTextAttribute).
А как можно изменить цвет самого экрана?

Тем-же SetConsoleTextAttribute

CODE

#include <iostream>
#include <windows.h>

using namespace std;

int main()
{
   SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), FOREGROUND_RED | BACKGROUND_BLUE);
   cout << "Red text on a blue background\n";
   return 0;
}
 
    Top
arnix
Posted: Dec 21 2007, 01:32

Challenger

Group: Moderator
Member No.: 869

Joined: July 31, 2004

А если хочешь чтобы весь экран был иного цвета, вот smile.gif

CODE

#include <iostream>
#include <windows.h>

using namespace std;

BOOL set_console_bg_color(WORD color);

int main()
{
   set_console_bg_color(FOREGROUND_RED | BACKGROUND_BLUE);
   cout << "Red text on a blue background\n";
   return 0;
}

BOOL set_console_bg_color(WORD color)
{
   COORD coordScreen = {0, 0};
   DWORD cCharsWritten;
   CONSOLE_SCREEN_BUFFER_INFO csbi;
   DWORD dwConSize;

   HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);

   if (!GetConsoleScreenBufferInfo(hOutput, &csbi))
   {
       return 0;
   }
   dwConSize = csbi.dwSize.X * csbi.dwSize.Y;
   csbi.wAttributes = color;
   if (!FillConsoleOutputAttribute(hOutput, csbi.wAttributes, dwConSize, coordScreen, &cCharsWritten))
   {
       return 0;
   }
   SetConsoleTextAttribute(hOutput, color);
   return 1;
}
 
    Top
Master of Puppets
Posted: Dec 21 2007, 12:51

Eye of the Vision

Group: Moderator
Member No.: 2067

Joined: August 29, 2006

Можно еще консольной командой color smile.gif
system("color 0a"); - зеленый на черном.

--------------------
Master of Puppets, I'm pulling your strings, twisting your mind and smashing your dreams!
⠠⠵
 
       Top
observer
Posted: Dec 21 2007, 21:38

Brain Master

Group: Elite Member
Member No.: 802

Joined: June 25, 2004

Спасибо.
1-ый вариант не подойдет.
2-ой и 3-ий - то, что надо smile.gif

--------------------
From the freckled hills to the steel and glass canyons...
 
    Top
4 replies since Dec 19 2007, 22:56 Track this topic | Email this topic | Print this topic

<< Back to Windows programming

 




Arminco Global Telecommunications