我直接GetKeyState函數提示沒有定義.不知道為什么.哪位高手指教一下.也試過::GetKeyState,還是不行.加上Winuer.h還是不行啊.提示找不到加上"Winuser.h" .莫非是我的版本有問題.我用的是Visual c++ 2005 速成版.請問這有問題嗎?
2 回答

慕少森
TA貢獻2019條經驗 獲得超9個贊
加上"Winuser.h"
例如測試Ctrl鍵是否按下的代碼如下:
if (::GetKeyState(VK_CONTROL) < 0)
{
AfxMessageBox("Ctrl 鍵按下了。");
}
else
{
AfxMessageBox("Ctrl 鍵沒按下。");
}

12345678_0001
TA貢獻1802條經驗 獲得超5個贊
GetKeyState是一個Windows API函數,該函數檢取指定虛擬鍵的狀態。該狀態指定此鍵是UP狀態,DOWN狀態,還是被觸發的(開關每次按下此鍵時進行切換)。
函數原型
SHORT GetKeyState(int nVirtKey);函數說明
nVrtKey:定義一虛擬鍵。若要求的虛擬鍵是字母或數字(A~Z,a~z或0~9),nVirtKey必須被置為相應字符的ASCII碼值,對于其他的鍵,nVirtKey必須是一虛擬鍵碼。若使用非英語鍵盤布局,則取值在ASCIIa~z和0~9的虛擬鍵被用于定義絕大多數的字符鍵。例如,對于德語鍵盤格式,值為ASCII0(OX4F)的虛擬鍵指的是"0"鍵,而VK_OEM_1指"帶變音的0鍵"
頭文件
#include <Winuser.h>
添加回答
舉報
0/150
提交
取消