お知らせ

  • 利用規約を守って投稿してください。また、よくある質問および投稿の手引きも参照してください。
  • メッセージの投稿にはアカウントが必要です。未登録の方は、ユーザ登録ページからアカウントを作成することができます。

#1 2011-06-05 17:14:45

kKoji
新しいメンバ
登録日: 2011-06-05

タイトルバー文字列の取得

はじめましてkKojiです。

eclipse/C++でデスクトップ上のウィンドウを列挙するプログラムを作ってみようかと思っています。
列挙自体については目処がついたような感じなんですが、タイトルバー文字列の取得で引っかかってしまいました。

XGetWMNameかXGetTextPropertyで取得できるのかと思ったのですが、「Firefox」や「Eclipse」等となります。
タイトルバーに表示されている通りの文字列を取得するにはどうすればよいのでしょうか?

オフライン

 

#2 2011-06-05 22:56:46

hmatsue
アドバイザ
登録日: 2009-03-10

Re: タイトルバー文字列の取得

C言語はほとんど読み書きできない人なので、雰囲気だけからの判断ですが、
apt-get source x11-utils
して、中に入っている、xwininfoの、xwininfo.cのDisplay_Window_Idあたりを読むと目的が達成できそうな感じです。

オフライン

 

#3 2011-06-06 19:51:36

kKoji
新しいメンバ
登録日: 2011-06-05

Re: タイトルバー文字列の取得

x11-utilsのxwininfo.cを参考にし、XmbTextPropertyToTextListで取得出来ました。

XmbTextPropertyToTextListも試してはいたんですが、setlocaleをしていなかった為
その時は正しく表示できていなかったようです。

おかげさまで解決出来ました。ありがとうございます。

オフライン

 

Board footer

Powered by FluxBB