Previous: 今日登場する重要なイベント構造体のメンバー
Up: Xウィンドウ・プログラミング
第5回 ウィンドウのプログラミング・スタイル

Previous Page: 今日登場する重要なイベント構造体のメンバー
Next Page: Xウィンドウ実習
第6回 マウスからイベントを受け取る

マクロ定義に慣れよう

今日のプログラムには、ButtonPress とか、 ButtonPressMaskとか、 やたらと長い言葉が出てきてまごつくかもしれません。 これらのマクロはインクルード・ファイルの中で #define文を使って定義されています。 Xlibでプログラムを作るときには、 特別な意味を持つ約束です。 while( True ) の True もマクロです。 実際には数値の1ですが、 「無限ループだ」という意味をわかりやすくするために、 わざと言葉による表現を使っているのです。 プログラムを書いた人の意図をはっきりさせ、 他の人が見ても理解し易いようにするのは非常に重要なことです。
なお、マクロ定義には単純な数値だけではなく、 簡単な計算の手順も登録することができます。 そのようなマクロは、引数の与え方など見かけ上は関数のように取り扱えます。 既に登場した DefaultRootWindow()などがその例です。

今日登場する重要なマクロ定義

イベント・マスク ButtonPressMask ……… マウス・ボタンのクリックを受け取る イベントのタイプ ButtonPress ……… マウス・ボタンが押された(クリック) その他 True   ……… 常に正しい条件(無限ループを作る)


maruyama@wakhok.ac.jp
1995年02月01日 (水) 00時21分18秒 JST