導航:首頁 > 源碼編譯 > 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程序相關的資料

熱點內容
有個腹黑程序員男友是什麼體驗 瀏覽:110
pdf添加文本框 瀏覽:770
系統文件夾很大沒有文件 瀏覽:74
蘇寧電器app如何還分期 瀏覽:635
蘋果怎麼在主屏幕創建文件夾 瀏覽:627
河南雲伺服器租用虛擬主機 瀏覽:361
centos修改ip命令 瀏覽:779
租用伺服器屬於什麼服務類型 瀏覽:135
英雄聯盟說沒有網路連接到伺服器地址 瀏覽:28
單片機周期信號波形識別 瀏覽:42
演算法驅動的成長史 瀏覽:936
好又省APP怎麼用 瀏覽:576
pdf在線格式轉換jpg格式轉換器 瀏覽:868
中興捧月演算法大賽第二場 瀏覽:15
穿雲伺服器 瀏覽:394
單片機核心電壓表 瀏覽:151
最強大逃頂通達信指標源碼 瀏覽:441
java程序員面試寶典歐立奇 瀏覽:457
cad命令不要跟著游標 瀏覽:200
騰訊軟體伺服器是什麼 瀏覽:895