other versions
- wheezy 4.1.0.20011224-6
XSendEvent(3X11) | XLIB FUNCTIONS | XSendEvent(3X11) |
名前¶
XSendEvent, XDisplayMotionBufferSize, XGetMotionEvents, XTimeCoord - イベント構造体とポインタ移動履歴構造体の送信書式¶
Status XSendEvent( display, w, propagate, event_mask, event_send)Display * display;
Window w;
Bool propagate;
long event_mask;
XEvent * event_send; unsigned long XDisplayMotionBufferSize( display)
Display * display; XTimeCoord *XGetMotionEvents( display, w, start, stop, nevents_return)
Display * display;
Window w;
Time start, stop;
int * nevents_return;
引き数¶
- display
- X サーバへの接続を指定する。
- event_mask
- イベントマスクを指定する。
- event_send
- 送るイベントを指定する。
- nevents_return
- 移動履歴バッファからイベントの数が返される。
- propagate
- 真偽値を指定する。
- start
-
- stop
- イベントが移動履歴バッファより返される時間間隔を指定する。 タイムスタンプか CurrentTime を指定する。
- w
- イベントを送る先のウィンドウ、 PointerWindow, InputFocus のいずれかを指定する。
説明¶
関数 XSendEvent は対象ウィンドウを識別し、指定したイベントをどのクライアントが受け取る か決定し、アクティブなグラブを無視する。 この関数にはイベントマスクを渡さなければならない。 正しいイベントマスク名に関しては 10.3 章を参照すること。 この関数は引き数 w を用いて、以下のようにして対象ウィンドウを識別する。- •
- w が PointerWindow ならば、対象ウィンドウはポインタを含むウィンドウである。
- •
- w が InputFocus であり、フォーカスウィンドウがポインタを含むならば、対象ウィンドウは ポインタを含むウィンドウである。 そうでなければ、対象ウィンドウはフォーカスウィンドウである。
- •
- イベントマスクが空集合の場合、イベントは対象ウィンドウを作成した クライアントに送られる。 そのクライアントがもはや存在しない場合には、イベントはどこにも 送られない。
- •
- propagate が False の場合、イベントは対象ウィンドウでイベントマスクを使ってその イベント型を選択している全てのクライアントに送られる。
- •
- propagate が True であり、イベントマスクを使って対象ウィンドウでそのイベント型を選択 しているクライアントが無い場合には、次の条件を満たす最も近い 祖先ウィンドウに置き換えられる。その条件とは、対象ウィンドウは クライアントのどれかがイベントマスクでその型を選択していることと、 間にあるウィンドウがそのイベントの伝播を止めるようなマスクを 持っていないことである。 そのようなウィンドウが無い場合や、そのウィンドウがフォーカスウィンドウ の親であり、元々 InputFocus が対象ウィンドウとして指定されていた場合には、このイベントはどの クライアントにも送られない。 そうでない場合、このイベントは、最終的な対象ウィンドウ上で指定した型 のイベントをイベントマスクを使って選択している全てのクライアントに 通知される。
構造体¶
XTimeCoord 構造体の内容を示す。typedef struct { Time time; short x, y; } XTimeCoord;time メンバにはミリ秒単位で時刻が設定される。 x, y メンバには、指定したウィンドウの原点に対する座標でポインタの座標 が設定され、通知される。
返り値¶
- BadValue
- 指定された数値に、リクエストの許容範囲を越えているものがある。引き数に対 して特定の範囲が指定されていなければ、引き数の型で定義されている全ての範 囲が許される。選択肢として定義されている引き数はこのエラーを起こすことが ある。
- BadWindow
- Window 引き数に指定された値が、定義されているウィンドウを指していない。
関連項目¶
XAnyEvent(3X11), XIfEvent(3X11), XNextEvent(3X11), XPutBackEvent(3X11)Release 6.5 | X Version 11 |