一、用到的函式(獲得指向標準輸入,標準輸出和標準錯誤裝置的控制代碼)
1.getstdhandle:
handle getstdhandle(
dword nstdhandle// input, output, or error device );
value
meaning
std_input_handle
standard input handle
std_output_handle
standard output handle
std_error_handle
standard error handle如:
handle hconsole;
hconsole=getstdhandle(std_output_handle);
2.setconsoletextattribute
(設定控制台下前景色和前景色)
bool setconsoletextattribute(
handle hconsoleoutput,// handle to console screen buffer
wordwattributes// text and background colors );
wattributes
是word
型別,雙位元組,它的取值如下:
foreground_blue, foreground_green, foreground_red, foreground_intensity, background_blue, background_green, background_red, and background_intensity
它們在wincon.h
中的定義:
#define foreground_blue
0x0001 // text color contains blue.
#define foreground_green
0x0002 // text color contains green.
#define foreground_red
0x0004 // text color contains red.
#define foreground_intensity 0x0008 // text color is intensified.
#define background_blue0x0010 // background color contains blue.
#define background_green0x0020 // background color contains green.
#define background_red
0x0040 // background color contains red.
#define background_intensity 0x0080 // background color is intensified.
這和命令提示符中使用color命令的結果是一致的。
color
命令的使用說明如下:
顏色屬性由兩個十六進製制數字指定
-- 第乙個為背景,第二個則為前景。每個數字可以為以下任何值之一:
0 =
黑色8 = 灰色
1 =
藍色9 =
淡藍色
2 =
綠色a =
淡綠色
3 =
湖藍色b =
淡淺綠色
4 =
紅色c =
淡紅色
5 =
紫色d =
淡紫色
6 =
黃色e =
淡黃色
7 =
白色f =
亮白色
由此,我們得出:如果我們只是想簡單定義控制台下的輸出,只須指定
wattribute
的低位元組就行了,其中低位元組
低四位前景色(文字顏色)
高四位背景色
二、示例
如:指定控制台下背景色為黑色,前景色為淡綠色
#include
#include
void main()
這和命令提示符下:
color
0a的結果是一樣的,本人比較喜歡這一顏色,儲存這種屬性,則下次再次開啟命令提示符時,也是這種顏色。
如何隱藏win32控制台應用程式的視窗
有些時候,我們寫的win32控制台應用程式只是為了實現一些簡單的功能,並不希望出現乙個cmd視窗,此時 我們該怎麼做呢?下面是乙個簡單的方法,就是在程式開頭,引用標頭檔案之後加上這麼一句話,什麼意思呢?就是說,將程式指定為windows應用程式,並且指定其入口位址是main函式,為什麼要這麼做,因為...
Win32程式和控制台應用程式的專案互轉設定
一般情況下,如果是windows程式,那麼winmain是入口函式,在vs2010中新建專案為 win32專案 如果是dos控制台程式,那麼main是入口函式,在vs2010中新建專案為 win32控制台應用程式 而如果入口函式指定不當,很顯然c語言執行時找不到配合函式,它就會報告錯誤。修改設定適應...
win32視窗程式轉為控制台
windows支援兩種型別的程式,gui graphical user inte ce 和cui console user inte ce 他們是通過乙個叫載入器的東西進行載入,vs中只要修改聯結器 系統 子系統中的值,如果是gui則是 subsystem windows 如果是cui則是 subs...