# include & ltwindows.h & gt
# include & ltiostream & gt
使用命名空間std
void set color(unsigned short ForeColor = 0,unsigned short BackGroundColor=0)
{
HANDLE hCon = GetStdHandle(STD _ OUTPUT _ HANDLE);
SetConsoleTextAttribute(hCon,ForeColor | background color);
}
int main()
{
int FC,BC;
for(BC = 0;BC & lt=17;BC++)
{
for(FC = 0;FC & lt=255;FC++)
{
SetColor(FC,BC);
STD::cout & lt;& ltFC & lt& lt,' & lt& ltBC & lt& lt\ t ';
SetColor(7,0);
if(FC % 16 = = 15)STD::cout & lt;& ltendl
}
}
返回0;
}
耀眼吧?簡單說壹下:
利用API函數GetStdHandle()和SetConsoleTextAttribute()在vc++中實現彩色背景和彩色文本。
先說壹下這兩個函數聲明的含義和它們的參數。首先來說說GetStdHandle(),聲明如下
句柄GetStdHandle(
德沃德·恩斯特漢德爾
);
GetStdHandle()返回標準輸入、輸出或錯誤設備的句柄,即獲得輸入、輸出/錯誤屏幕。
緩沖區的句柄。其參數nStdHandle的值是以下類型之壹:
價值意義
標準輸入的句柄。
標準輸出的句柄。
標準錯誤的句柄。
SetConsoleTextAttribute()函數用於設置控制臺程序中輸入或輸出文本的文本顏色和背景顏色。
顏色。只有設置此功能後,才能顯示彩色文本。它的功能原型是:
BOOL SetConsoleTextAttribute(
Handle HConsoleOutput,//控制臺屏幕緩沖區的句柄。
單詞屬性//文本和背景的顏色
);
如果函數成功設置了文本和背景色,則返回非零值;如果失敗,則返回零。其參數如下:
控制臺屏幕緩沖區的句柄。
文字屬性-文字和背景的顏色。
其文本和背景顏色可以是前景藍、前景綠、前景紅、前景強度,
背景_藍色、背景_綠色、背景_紅色和背景_強度。
而這些顏色組合成的任何顏色,點都有點類似於RGB,但是怎麽組合就不太清楚了。...