c++ 鍵盤/滑鼠互動

pugong發表於2024-10-06

c++ 鍵盤/滑鼠互動

滑鼠操作

點選

加上如下宏定義

#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
#define KEY_UP(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 0 : 1)

如果獲取左鍵的點選,可以使用如下的程式碼:KEY_DOWN(MOUSE_MOVED)
如果獲取滾輪的點選,可以使用如下的程式碼:KEY_DOWN(MOUSE_WHEELED)
如果獲取右鍵的點選,可以使用如下的程式碼:KEY_DOWN(MOUSE_EVENT)

system

system("color XY"); 設定顏色為背景:X文字:Y
0 = 黑色       8 = 灰色
1 = 藍色       9 = 淡藍色
2 = 綠色       A = 淡綠色
3 = 淺綠色     B = 淡淺綠色
4 = 紅色       C = 淡紅色
5 = 紫色       D = 淡紫色
6 = 黃色       E = 淡黃色
7 = 白色       F = 亮白色

示例

#include<iostream>
#include<windows.h>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
#define KEY_UP(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 0 : 1)
using namespace std;
int main() {
    while (1) {
		if (KEY_DOWN(MOUSE_MOVED)) {
			system("color 90");  //點選左鍵螢幕變成藍色
		}
		else if (KEY_DOWN(MOUSE_WHEELED)) {
			system("color A0");  //點選左鍵螢幕變成綠色
		}
		else if (KEY_DOWN(MOUSE_EVENT)) {
			system("color 70");  //點選左鍵螢幕變成白色
		}
    }
    return 0;
}

輸入輸出

函式

#include<iostream> //標頭檔案
cin // 輸入
cout //輸出
#include<conio.h> //標頭檔案
_getch() // 無痕讀入
_kbhit() // 檢測是否有鍵按下

示例

#include<iostream>
#include<conio.h>
using namespace std;

int main() {
	while (1) {
        if (_kbhit()) {
            char ch = _getch();
            if (ch == 'a') cout << "a\n";
            else if (ch == 'd') cout << "d\n";
            else if (ch == 'w') cout << "w\n";
            else if (ch == 's') cout << "s\n";
        }
	}
    return 0;
}

相關文章