Previous: ウィンドウ表示のコントロール
Up: Xウィンドウ実習
第1回 ウィンドウを作ろう

Previous Page: ウィンドウ表示のコントロール
Next Page: Xウィンドウ概論
第2回 オブジェクトと構造体

2個のウィンドウ

ウィンドウは、1つのプログラムの中で何個でも作ることができます。 リターンキーを押すたびに、ウィンドウが交互に現われ、 最後は同時に2個のウィンドウが表示されるような プログラムを完成させてください。ソース・ファイル名は win3.c とします。

win3.c

#include<stdio.h>
#include<X11/Xlib.h>
main()
{
 Display *dsp;                           /* ディスプレイ構造体の宣言 */
 Window   win1,win2;                     /* ウィンドウ構造体の宣言 */

dsp = XOpenDisplay( NULL ); /* ディスプレイのオープン */

/* ウィンドウ1の生成 */ win1 = XCreateSimpleWindow( dsp, DefaultRootWindow(dsp), 0, 0, 100, 800, 1, BlackPixel(dsp,0), WhitePixel(dsp,0) ); /* ウィンドウ2の生成 */ win2 = XCreateSimpleWindow( dsp, DefaultRootWindow(dsp), 0, 0, 800, 100, 1, BlackPixel(dsp,0), WhitePixel(dsp,0) );

XMapWindow( dsp, win1 ); /* ウィンドウ1の表示 */ XFlush( dsp ); getchar(); /* リターンキーの入力まで停止 */

XUnmapWindow( dsp, win1 ); /* ウィンドウ1を消す */ XMapWindow( dsp, win2 ); /* ウィンドウ2の表示 */ XFlush( dsp ); getchar(); /* リターンキーの入力まで停止 */

XMapWindow( dsp, win1 ); /* ウィンドウ1の表示 */ XFlush( dsp ); getchar(); /* リターンキーの入力まで停止 */

XCloseDisplay( dsp ); /* ディスプレイのクローズ */ }


☆プログラムができたら、前と同じようにコンパイルし、実行しなさい。

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