Previous: Xウィンドウプログラムの開発環境
Up: Xlib
Next: 関数の使い方と引数
Previous Page: Xウィンドウプログラムの開発環境
Next Page: 関数の使い方と引数

関数と構造体が決め手

たとえば右のプログラムの中では5つの Xlibの関数が使われています。 XOpenDisplay(), XCreateSimpleWindow(), XMapWindow(), XFlush(), XCloseDisplay() それぞれの意味は、「ディスプレイのオープン(画面への接続)」、 「ウィンドウ・データの生成」、「ウィンドウの画面への表示」、 「サーバーとの通信を行う」、 「ディスプレイのクローズ(画面との接続の終了)」というように、 ウィンドウ・システムの基本的な操作を表しています。 これらの命令を組み合わせることによって、 Xlibのプログラミングが実現されるわけです。
この他にも DefaultRootWindow(), BlackPixel(), WhitePixel() のような関数に似た命令もあります。 これらは「マクロ定義」と呼ばれるもので関数と区別しますが、 最初のうちは関数と同じだと思ってかまいません。 それぞれの意味は、「画面全体を表すウィンドウ(ルート・ウィンドウ)」、 「黒色の番号」、「白色の番号」を指定します。
もう一つのポイントとなるのが構造体です。 構造体とは、特定のデータの集まりに名前を付けて取り扱いやすくしたものでしたね。 右のプログラムでは、 Window と Displayという 2種類の構造体が利用されていますが、 それぞれウィンドウ、ディスプレイ画面を表す構造体です。 これらも Xlibがあらかじめ用意してくれたもので、 その定義はインクルード・ファイル X11/Xlib.h の中にあります。 (構造体の代わりに「オブジェクト」という言葉が使われる場合があります。 「オブジェクト」は「物」という意味で、データの対象となる物体を表します。 より正確に言うならば、ウィンドウというオブジェクトを表す構造体名が Window 、 ディスプレイというオブジェクトを表す構造体名がDisplay というわけです。)

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