2
プログラムを計算しています。マウスをクリックして応答を得ることができれば、本当に助けになります。ターミナルプログラムをマウスクリックに反応させる方法
それだけで私はそれを行うことができるだろう機能するかCのライブラリ使用して、その後できない場合はどのように私もこれを行うことができます。
プログラムを計算しています。マウスをクリックして応答を得ることができれば、本当に助けになります。ターミナルプログラムをマウスクリックに反応させる方法
それだけで私はそれを行うことができるだろう機能するかCのライブラリ使用して、その後できない場合はどのように私もこれを行うことができます。
Ncurses has support for GPM (mouse library)。 Ncurses interfacing with the mouse how-toから
抜粋:
マウスイベントのクラスたら、いくつかのマウスイベントが起こるたびにKEY_MOUSEを返す、関数のgetchは()クラスを有効にしてきました。次に、getmouse()を使用してマウスイベントを取得できます。
コードは、およそ次のようになります
MEVENT event;
ch = getch();
if(ch == KEY_MOUSE)
if(getmouse(&event) == OK)
. /* Do some thing with the event */
.
.
getmouse()は、それに与えられたポインタにイベントを返します。
typedef struct
{
short id; /* ID to distinguish multiple devices */
int x, y, z; /* event coordinates */
mmask_t bstate; /* button state bits */
}
私たちが興味を持っている主な変数は、マウスのボタンの状態を示します。
次に、次のようなコードスニペットを使用して、何が起こったのかを知ることができます。
if(event.bstate & BUTTON1_PRESSED)
printw("Left Button Pressed");
これはStackOverflowに属していると思いますが、それはUbuntu固有ではありません。 – Psirus