分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!
通常控制台都是白字黑底的,千篇一律不免單調。適當的在控制台中加入一些彩色可以讓人耳目一新,本文介紹如何使用系統api介面去修改控制台的文字和背景顏色。
主要用到如下二個函式:
得到standard input, standard output, or standard error的裝置控制代碼:
handle getstdhandle(dword nstdhandle);
引數有:std_input_handle,std_output_handle及std_error_handle。傳入std_output_handle就可以得到控制台輸出裝置的控制代碼。
設定控制台裝置的屬性
bool setconsoletextattribute( handle hconsoleoutput,word wattributes);
第乙個引數為控制台standard input, standard output, or standard error的裝置控制代碼
第二個引數用來裝置裝置的屬性,這裡詳細介紹下表示顏色的引數。
先看下顏色的種類:
在xp系統 控制台一共有16種文字顏色,16種背景顏色,可以通過
文字顏色 + 背景顏色 * 0x10 來設定控制台的顏色。
已經定義好的顏色常量如下:
文字顏色使用如下組合:
foreground_blue 0x0001 // text color contains blue.
foreground_green 0x0002 // text color contains green.
foreground_red 0x0004 // text color contains red.
foreground_intensity 0x0008 // text color is intensified.高亮顏色
背景顏色使用如下組合(其實就是上面值*0x10):
background_blue 0x0010 // background color contains blue.
background_green 0x0020 // background color contains green.
background_red 0x0040 // background color contains red.
background_intensity 0x0080 // background color is intensified.
上面的顏色可以任意組合,如知道黃色可以由紅色和綠色組成,所以可以用foreground_green | foreground_red來表示黃色的文字。
預設情況下控制台的文字顏色是白色即用foreground_red | foreground_green | foreground_blue也可以直接用7表示,背景顏色為黑色即用0表示。
下面是已經封裝好的函式
//一共有16種文字顏色,16種背景顏色,組合有256種。傳入的值應當小於256
bool setconsolecolor
(word wattributes)
使用範例:
int
main
()
輸出結果如下:
可以將本篇內容與vc 在控制台下顯示進度 結合成來,完成乙個隨著任務完成百分比的增加,文字顏色不斷變化的彩色進度顯示。相信比單一的白色文字要美觀的多。
給我老師的人工智慧教程打call!
VC 控制台顏色設定
通常控制台都是白字黑底的,千篇一律不免單調。適當的在控制台中加入一些彩色可以讓人耳目一新,本文介紹如何使用系統api介面去修改控制台的文字和背景顏色。主要用到如下二個函式 得到standard input,standard output,or standard error的裝置控制代碼 handle...
VC控制台顏色設定
通常控制台都是白字黑底的,千篇一律不免單調。適當的在控制台中加入一些彩色可以讓人耳目一新,本文介紹如何使用系統api介面去修改控制台的文字和背景顏色。主要用到如下二個函式 得到standard input,standard output,or standard error的裝置控制代碼 handle...
C C 控制台顏色設定類
windows和linux都可用的乙個類.用來設定顏色,沒有太複雜。簡單夠用吧。ifdef win32 include class fontcolor void setcolor int ncolor void unsetcolor fontcolor private handle m hstdou...