Previous: Exposeイベントとは?
Up: イベントの種類とイベント共用体
Previous Page: Exposeイベントとは?
Next Page: ウィンドウの階層構造の設計
先週の例では、イベントは ButtonPress(マウスのクリック)のみを扱いました。
今回はそれに加え、MotionNotify(マウスのドラッグ)と
Expose(画面の再表示の要求)を扱います。
イベントをウィンドウが受け取るためには、
前もってイベント・マスクを設定しておく必要がありました。
それぞれのイベントごとに対応したマスクがあります。
イベント・マスクの設定には関数XSelectInput()を使いました。
第3引数にマスクをマクロ名で指定しますが、2つ以上のマスクを使う時には、
| の記号でつなげます。
XSelectInput( dsp, canvas, ButtonPressMask | Button1MotionMask ); XSelectInput( dsp, quit, ButtonPressMask | ExposureMask );