導航:首頁 > 源碼編譯 > vsc編譯vc程序

vsc編譯vc程序

發布時間:2024-11-28 08:31:58

㈠ vc6 打開工程,代碼沒顏色

控制台的設置函數名很多都以 SetConsole 或 GetConsole 開頭。
BOOL WINAPI SetConsoleTextAttribute(
__in HANDLE hConsoleOutput,
__in WORD wAttributes
);
第一個參數可用 GetStdHandle(STD_OUTPUT_HANDLE); 獲得;
第二個參數意義如下:
Attribute Meaning
FOREGROUND_BLUE Text color contains blue.
FOREGROUND_GREEN Text color contains green.
FOREGROUND_RED Text color contains red.
FOREGROUND_INTENSITY Text color is intensified.
BACKGROUND_BLUE Background color contains blue.
BACKGROUND_GREEN Background color contains green.
BACKGROUND_RED Background color contains red.
BACKGROUND_INTENSITY Background color is intensified.
COMMON_LVB_LEADING_BYTE Leading byte.
COMMON_LVB_TRAILING_BYTE Trailing byte.
COMMON_LVB_GRID_HORIZONTAL Top horizontal.
COMMON_LVB_GRID_LVERTICAL Left vertical.
COMMON_LVB_GRID_RVERTICAL Right vertical.
COMMON_LVB_REVERSE_VIDEO Reverse foreground and background attributes.
COMMON_LVB_UNDERSCORE Underscore.
這些是一個16位數的各個二進制位,你可以用位運算將這些屬性組合,如:
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY | BACKGROUND_INTENSITY);
如果要不等待回車立刻讀入鍵盤輸入,在conio.h中有個getch()函數。
如果要處理上下左右等鍵盤輸入,有個MapVirtualKey函數,可以上網查一下這個函數的具體用法。
如果要清屏,可以發送命令system("cls");,這個函數在stdlib.h中。
例如:
#include <stdio.h>
#include <conio.h> //getch()
#include <stdlib.h> //system()
#include <Windows.h> //WIN API
int main(){
//這里只有4個選項,如果選項數更改,後面相應部位也要更改
char*option[]=;
char key = 0;
int i, select = 0;
HANDLE ohandle = GetStdHandle(STD_OUTPUT_HANDLE);
while(true){
for(i=0;i<4;i++){//這里共4個選項
if(i==select)//設置焦點高亮
SetConsoleTextAttribute(ohandle,BACKGROUND_INTENSITY);
else if(i==select+1)//恢復設置
SetConsoleTextAttribute(ohandle,FOREGROUND_INTENSITY);
puts(option[i]);
}
SetConsoleTextAttribute(ohandle,FOREGROUND_INTENSITY);//恢復設置
key=getch();
if(key==0x1b) //ESC 鍵
return 0;
if(key==0xd) //Enter 鍵
break;
if(key<0){ //非ascii碼鍵2個位元組
key=getch();
switch(MapVirtualKey(key,MAPVK_VSC_TO_VK)){
case VK_UP:
select = (select+3)%4;//焦點上移,減一,滾動選擇,共4個選項
break;
case VK_DOWN:
select = (select+1)%4;//焦點下移,加一
break;
}
}
system("cls");
}
system("cls");
//TODO:use select to do something here !
printf("you selected : %s\n",option[select]);
//return 0; //not necessary in new standards
}
也可以用GetKeyState等函數,它返回上一次按鍵的信息,這些函數屬於win API(#include<windows.h>),並可以處理更多按鍵消息,如需要可查閱msdn。

閱讀全文

與vsc編譯vc程序相關的資料

熱點內容
pop3伺服器怎麼裝 瀏覽:138
cpp編譯解決命名沖突問題 瀏覽:507
單片機的晶振頻率 瀏覽:481
翻樣軟體加密鎖問題 瀏覽:204
電腦怎麼設置dhcp伺服器地址 瀏覽:591
十天突破雅思寫作劍8pdf 瀏覽:354
如何判定伺服器硬碟燒了 瀏覽:243
數值逼近pdf 瀏覽:706
程序員跪鍵盤 瀏覽:3
江蘇銀行app換設備電話按哪個鍵 瀏覽:235
圖片無損壓縮怎麼辦 瀏覽:6
如何確認伺服器的光口網卡 瀏覽:243
nb1111y壓縮機性能數據 瀏覽:549
下一代編譯器 瀏覽:131
用什麼app可以查產品批號 瀏覽:436
python自動補齊 瀏覽:904
蘋果wifi安卓怎麼連接不上 瀏覽:934
為什麼有的app只能用蘋果支付 瀏覽:175
手游雲頂文件夾 瀏覽:939
msvc和mingw都是編譯器嗎 瀏覽:428