2014-02-21 109 views
0

我將在控制檯中獲取鼠標位置。(Linux)如何獲得鼠標的初始位置或設置光標位置沒有X在C?

但是x/y是關於運動的。所以我必須計算位置。 有一種方式來獲得與X,但我在我的程序中使用的幀緩衝,所以我想如何讓沒有X.

我運動與此代碼。

#include <stdio.h> 
#include <fcntl.h> 
#include <linux/input.h> 
#include <unistd.h> 
#define MOUSEDEV "/dev/input/event0" 
//#pragma pack(1) 

int filedesc; 

int x, y; 

void readm(){ 
    struct input_event in; 
    read(filedesc, &in, sizeof(struct input_event)); /* there was data to read */ 
    if(in.type == 3) 
    printf("Input: Time: %d.%d Type: %d Code: %d Value: %d\n", in.time.tv_sec, in.time.tv_usec, in.type, in.code, in.value); 
    usleep(1000); 
} 

int main(){ 
    filedesc = open(MOUSEDEV, O_RDWR); 
    while(1) readm(); 
    return 0; 
} 
+0

之外你問這個幹什麼? –

回答

1

鼠標告訴你什麼都沒有,除了未指定單位的相對位置。

你不需要知道。

你只需要從那裏決定一個起點和跟蹤位置。

1

根據定義,mouse給出了相對運動(這是鼠標硬件的工作方式),而不是絕對位置。

使用(或至少研究)的GPM軟件使用鼠標X.