塩崎です。 From: Hiroaki Sakurada <hiroman _at_ topaz.ocn.ne.jp> Subject: [linux-users:87968] コンソールプログラムからのX-WindowアプリのWindowIDを取得するには Date: Mon, 1 Oct 2001 16:16:24 +0900 Message-ID: <20011001155824.0105.HIROMAN _at_ topaz.ocn.ne.jp> > ・塩崎様からの情報から・・・ > XQueryTree(...)を使用すればいい・・・ > ということですが、この関数とXFetchName(...)関数を使用して、 > ウィンドウ名で検索すればいいのでしょうか? > 素人考えから思いついたのですが・・・ そのウィンドウを一意に特定できる名前が付いているのならば、 それで十分でしょう。 普通にやると全ウィンドウをなめることになりかねないので、 クライアントの最上位のウィンドウであることがわかってるのならば、 Display *dpy; int i, scr, num; Window dum, win, *kids; char *name; ... XQueryTree(dpy, RootWindow(dpy, scr), &dum, &dum, &kids, &num); for (i=0; i<num; i++) { win = XmuClientWindow(dpy, kids[i]); XFetchName(dpy, win, &name); if (!strcmp(name, "funyu")) { /* match */ } XFree(name); } みたいにします。 一方で、クライアントの最上位のウィンドウでない場合は、 XQueryTree を再帰的に繰り返して真面目に子供を辿っていくしかないでしょう。 では。 -- Takuya SHIOZAKI / ASTEC Products, Inc.
References:
- [linux-users:87968] コンソールプログラムからのX-WindowアプリのWindowIDを取得するにはHiroaki Sakurada
- Prev by Subject: [linux-users:87969] Re: コンソールプログラムからのX-WindowアプリのWindowIDを取得するには
- Next by Subject: [linux-users:87971] 違うデストリビューションでのインストール
- Previous by thread: [linux-users:87969] Re: コンソールプログラムからのX-WindowアプリのWindowIDを取得するには
- Next by thread: [linux-users:87972] Re: コンソールプログラムからのX-WindowアプリのWindowIDを取得するには
- Indexes:[Main][Thread]