平時在VC6.0中編寫Console程序時,系統默認字符的背景色爲黑色,前景色爲白色。
現在我們來實現Console輸出彩色字符.
include<afx.h> //其內包含了windows.h #include"stdio.h" void ConSetTextColor(unsigned char frontColor, unsigned char backColor) { /*GetStdHandle函數可以獲得標準輸入、輸出、錯誤設備屏 幕緩衝區的句柄,*/ HANDLE hWnd=::GetStdHandle(STD_OUTPUT_HANDLE);//標準輸出設備,同理:STD_INPUT_HANDLE, STD_ERROR_HANDLE. backColor<<=4; //有16中顏色可選擇,高4爲背景色,低4爲前景色。 backColor+=frontColor; ::SetConsoleTextAttribute(hWnd, backColor); //設置背景色與前景色的函數 } int main() { /*======================================== int input; CString str; printf("Please entry a positive number:"); scanf("%d", &input); str.Format(TEXT("Your Number is: %d"), input); MessageBox(NULL, str, TEXT("Input"), MB_OK); ==========================================*/ for (unsigned char front=0; front<16; front+=1) { for (unsigned char back=0; back<16; back+=1) { ConSetTextColor(0, back); //設置背景色 printf(TEXT("front=%d, back=%d"), front, back); ConSetTextColor(0,0); //都爲黑色 printf(TEXT(" ")); ConSetTextColor(front, 0); //設置前景色 printf(TEXT("front=%d, back=%d"), front, back); ConSetTextColor(0,0); printf(TEXT(" ")); ConSetTextColor(front, back); //都設置 printf(TEXT("front=%d, back=%d/n"), front, back); for (int i=0; i<10000000; i++) ; //延時 } } return 0; }
效果如下:
我不知道是自已的腦子太笨還是C語言基礎不太好, 這本書的開頭看得我腦子都快要爆了,雖然作者講得很詳細,但是很是有很多的東東我不太懂:1。windows 環境中的動態鏈接,API,內存管理,講得很抽象2 寬字符和8位字符與庫函數
源地址: http://www.qqgb.com/Program/VC/VCJC/Program_251616.html 桌面圖標是放在 SysListView32這個列表中,下面得到了它的句柄,如何遍歷它得到各各桌面圖標的句柄? 如
CString GetBuffer() and ReleaseBuffer() 2009-05-12 16:32 原文地址:http://hi.baidu.com/winnyang/blog/item/067b0a5423805f173
I'm whiny when I feel exhausted. I think I'm not very good at programming. I'm study about 《Windows programming》rec
補充一點保存設備描述表的內容。 在某些情況下,您可能想改變某些設備描述表屬性,用改變後的屬性進行繪圖,然後恢復原來的設備描述表。要簡化這一過程,可以通過如下調用來保存設備描述表的狀態: idSaved =
在windows中可以使用fprintf,但不能使用printf 下面是兩者的區別和聯繫, int sprintf(char *szBuffer,const char *szFormat …):第一個參數是字符緩衝區,後面的是格式字符串
要求: 在窗口中使用一個定時器,每隔1S交替使用紅色、綠色、藍色刷新整個窗口客戶區。 分析一下: 首先是 定義三個畫刷分別定義爲紅色、藍色、綠色。 然後是獲得整個窗口客戶區,使用函數 GetClientRect(hwnd,&
先說一哈 其實這個 惡意程序 大部分都是參考了 網上的資料 也就是說==== 我這裏代碼都是 網上能找到的 出現了好長時間的代碼 沒有什麼創新性=== so 還請大佬們繞道了== 先說一下程序的大概情況=== 其實 程序外表就是一個
其實網絡編程一開始都搞過 只不過當時 精力都在CTF上面 一直想寫一些小玩意=== 但是都沒有空-- 所以現在打算抽兩天空寫一哈=== 最後也算是寫完了 其實一開始打算用的是選擇模型 最後感覺這個還是比較好玩的 就 打算用這個模型寫一
阻止屏幕保護 bool active = false; SystemParametersInfo(SPI_SETSCREENSAVEACTIVE, false, &active, SPIF_SENDWININICHANGE