トップページ⇒linux
706コメント248KB

GTK+プログラミング

■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin2007/09/05(水) 13:58:46ID:2SORZMjm
GUIツールキットであるGTK+とその周辺技術についてのスレッド

-前スレ-
http://pc11.2ch.net/test/read.cgi/linux/995808691/

-関連サイト-

本家
http://www.gtk.org/
APIレファレンス
http://library.gnome.org/devel/gtk/stable/
gtkmm(C++ラッパー)
http://www.gtkmm.org/
glade
http://glade.gnome.org/
libglade
http://www.jamesh.id.au/software/libglade/
0448犬山ぽち丸2010/05/22(土) 13:39:02ID:CFJ0lXX6
以前ここで質問してご教示いただいた事を参考にして、
縦書きビューワーを作ってみました。

ぽち*ろぐ: ぽちたて 0.1.0 をリリースしました
ttp://pochimaru.seesaa.net/article/150542330.html
0449login:Penguin2010/05/25(火) 09:28:21ID:wq6kVR7V
>>448
おめ!
0450login:Penguin2010/06/16(水) 00:53:38ID:U5l5xiNY
Xサーバーのdepth=15bit下において以下のコードで色がおかしくなります。(例えば白がマゼンタぽくなる)firefox,gimp上やdisplay -window root では正常に見えます。
こちらの書き方が正しくないのでしょうか?それともgdk-pixbufの15bitでの処理が正しくないのでしょうか16,24bitでは正常に見えます。
(xorg-server-1.7.1,gtk+-2.21.0)

#include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h>

int main(int argc,char *argv[]){
Display *dpy;
int scr;
Window root;
int depth;
GC gc;
GdkPixbuf *pixbuf;
gint imgw,imgh;

dpy = XOpenDisplay(NULL);
scr = DefaultScreen(dpy);
depth = DefaultDepth(dpy,scr);
root = RootWindow(dpy,scr);
gc = DefaultGC(dpy,scr);

g_type_init();
gdk_pixbuf_xlib_init_with_depth(dpy,scr,depth);
pixbuf=gdk_pixbuf_new_from_file(argv[1],NULL);
imgw=gdk_pixbuf_get_width(pixbuf);
imgh=gdk_pixbuf_get_height(pixbuf);
gdk_pixbuf_xlib_render_to_drawable(pixbuf,root,gc,0,0,0,0,imgw,imgh,XLIB_RGB_DITHER_MAX,0,0);
gdk_pixbuf_unref(pixbuf);
return 0;}
0451login:Penguin2010/06/29(火) 08:21:44ID:7ZTRAVs/
この板の奴には分からんだろ
0452login:Penguin2010/06/29(火) 12:06:30ID:SCBkgPqa
gdk-pixbufの新しいバージョンとソースくらは確認できるだろ?
0453login:Penguin2010/06/29(火) 13:07:25ID:7ZTRAVs/
くちごたえだけいっちょまえ
0454login:Penguin2010/07/01(木) 20:38:54ID:ff1chlOv
またgdk-pixbuf分離したのかめんどくせえな
0455login:Penguin2010/07/08(木) 13:05:20ID:kV57IwAm
あらっ?PPMの色反転してね?
0456login:Penguin2010/07/08(木) 21:04:54ID:kV57IwAm
ああ勘違いだった、反転フィルタ効いてた
0457login:Penguin2010/07/21(水) 21:06:32ID:eYcae5GB
ValaでGTK+ vs C++でQt
の構図に持って行きたい。
0458login:Penguin2010/07/22(木) 01:58:11ID:PbDDQq9y
valaつかうぐらいなら、gtk#つかうだろ
0459login:Penguin2010/07/22(木) 10:25:07ID:B8+a86z/
いやいや、Valaは良い言語だよ。
実行時に余計なライブラリとか要らないし。
0460login:Penguin2010/07/22(木) 18:59:19ID:P6pQJgjf
gtkbuilder対応もうれしいですね。 > vala
0461login:Penguin2010/08/09(月) 22:35:54ID:FqMSbruc
クリックする度に画像を切り替えようとして以下のようにしたところ、
2枚目の画像は表示されませんでした。
2枚目の画像を表示するには他にどのような処理が必要でしょうか?

#!/usr/bin/ruby
require 'gtk2'

window = Gtk::Window.new
window.signal_connect("destroy") {Gtk.main_quit}

image = []
image[0] = Gtk::Image.new("test.s/sample7.jpg")
image[1] = Gtk::Image.new("test.s/sample8.jpg")
i=0

event_box = Gtk::EventBox.new
event_box.add(image[0])
event_box.events = Gdk::Event::BUTTON_PRESS_MASK
event_box.signal_connect("button_press_event") {
event_box.remove(image[i])
i += 1
i %= 2
event_box.add(image[i])
}

window.add(event_box)
event_box.realize
event_box.window.cursor = Gdk::Cursor.new(Gdk::Cursor::HAND1)

window.show_all
Gtk.main
0462login:Penguin2010/08/10(火) 19:44:28ID:fAaz4maQ
>>461

event_box.add(image[i])
event_box.show_all
とか
0463login:Penguin2010/08/23(月) 22:46:19ID:UjVUUhyV
gtkでサブディスプレイにウィンドウを表示するのはどうやればいいんでしょう?
メインがlocalhost:0.0でサブがlocalhost:0.1になってます。
0464login:Penguin2010/08/24(火) 05:56:03ID:+4na7v6g
それはX用語(GTK+でも)でスクリーンというので
GtkWindowのscreenプロパティに表示したいgdkScreenを入れるんじゃないかな?
0465login:Penguin2010/09/06(月) 00:37:50ID:DZ6K0yAz
GTK#なのですが、.NETのWinFormsでいう、
SuspendLayout()
と
ResumeLayout()
はどうすればいいでしょうか?
0466login:Penguin2010/09/29(水) 06:17:42ID:Xcx5gfP/
質問です。
GtkBuilderで定義したウィンドウを複数表示するにはどうすればいいでしょうか?
一つだけだったら、gtk_builder_get_objectで取得して簡単に表示出来ます。
0467login:Penguin2010/09/29(水) 07:30:54ID:gR2Kn98z
>>466
GtkBuilder を複数生成すればいいんじゃないの?
自分がよくやるのは、GtkBuilder を複数生成して gtk_builder_add_from_string で定義を取り込み
0468login:Penguin2010/09/29(水) 08:32:23ID:mEXXgo8J
Gtkビルダー?マイクソソフトのC++ビルダーみたいな感じか?
と思って検索しようと思ったが堪えた
0469login:Penguin2010/09/29(水) 18:41:46ID:jeMZvjSG
GTK+のRAD開発ツールってgladeじゃん
04704662010/09/30(木) 03:18:19ID:oEA2zNJX
>>467
ありがとう。その方法でやってみる。

>>468
GtkBuilderは、以前のlibgladeにあたるもの。
それに、C++BuilderはMSじゃないぞ。

>>469
もちろん、Glade使ってXMLを作成してるよ。
それを読み込むのがGtkBuilder。
0471login:Penguin2010/10/03(日) 23:46:11ID:y5C9HzxD
cairoを使って書かれたゲームとかありますかね?
簡単なものでいいのですが
0472login:Penguin2010/10/04(月) 11:18:38ID:9wJE7nSN
>>471
http://uproda.2ch-library.com/299097YiT/lib299097.c
ダウンロードするとlib299097.cというファイルが出来るからこれをgccでコンパイルすればいい
コンパイルはディレクトリを移動してから
gcc lib299097.c -o cairo_game `pkg-config --cflags --libs gtk+-2.0`
と入れれば通るだろう
./cairo_game
でゲーム開始だ
0473login:Penguin2010/10/07(木) 23:33:21ID:bzqpJyzy
gtkmm使ってもなんか書きにくい
Python使ったら楽かな
0474login:Penguin2010/10/07(木) 23:58:28ID:wQWwIsB3
>>473
余程のものじゃない限り、性能的に問題とはならないと思うから、スクリプトは便利だよ。
まぁ、俺は ruby なんだけど。。。
0475login:Penguin2010/10/08(金) 13:40:09ID:BvF1QbPR
PythonならC++並みに開発環境整備されているし、Ubuntuのアプリも多くが
Python + gtk で開発されているよ。
0476login:Penguin2010/10/08(金) 13:41:57ID:yKf5ENPb
>>474
( ゚∀゚)人(゚∀゚ )ナカーマ
0477login:Penguin2010/10/08(金) 22:26:59ID:ncsyc+ZE
PerlとPythonなら どっちがいいですか?
0478login:Penguin2010/10/08(金) 22:51:53ID:lqYDv+Jp
gtkの開発するなら圧倒的にpython、としか言えんだろこのスレじゃ
0479login:Penguin2010/10/08(金) 22:53:13ID:vwfmsqfo
CだろJK
0480login:Penguin2010/10/08(金) 23:25:32ID:RoG/rFqo
「PerlとPythonならどっちがいいですか?」
「CだろJK」

ぱねぇっす! やっぱハッカーのひとはぱねぇっす!!
04814742010/10/08(金) 23:53:29ID:YC1HKIpZ
ruby 以外のバインディングの事を知らずに書くけど、今時はどの言語でも GtkBuilder を使えるだろうし、
どの言語がいいか何て、自分にどの言語が合ってるか次第なんじゃないの?
0482login:Penguin2010/10/09(土) 00:01:38ID:BvF1QbPR
>>481
C/C++ 以外では、
gtkが公式にサポートしているのがPython
Gnomeの公式アプリに使われているのがPython
UbuntuやFedoraでデフォルトでインストールされているのがPython
Anjuta等GTK系開発ツールのサポートが一番充実しているのがPython
04834742010/10/09(土) 00:20:06ID:HCJJF52G
>>482
おぉ、Python は gtk で公式にサポートされてるんだ。
それは、いいねぇ。
ruby も入れてくれんかな。
0484login:Penguin2010/10/09(土) 04:01:15ID:mDHE/CAa
何でみんなPythonが好きなんだ?
忠誠を誓ってるGoogle様が使ってるから、好きなふりをしてるだけか?

そうはいっても本当はPerlが大好きなんだろ?
0485login:Penguin2010/10/09(土) 06:24:12ID:Xt3OjFd+
日本のRuby右翼と同じだと思われたくないから
0486login:Penguin2010/10/09(土) 13:25:25ID:JGqpR3KW
Perlは3日たったら自分の書いたコードでも解読に苦労することがある。
Pythonは30分チュートリアルを読むだけで他人の書いたコードでもスラスラ読めることが多い。
0487login:Penguin2010/10/09(土) 13:39:33ID:3AdxyjT6
それでもボクはCがいい
0488login:Penguin2010/10/09(土) 13:59:17ID:pWZySSkO
            /
        ,'          i                       |
        |   !   |    |     i      |   |     i       |
        |   |   |    |     |       |   |   」_    . :|
        |   |   | : : : :|: :    │ i  . :|  . :|  「 { l:. . : . : . :|
        │  │  : :|: : i _ノ: :  : : ヽ、: :|: : : : |: : : : :/ }| | |: : : : : : :|
        〈::|   │: : 斗‐ 「 │: : : : :.:.| 「:.T ー-|- : : :| l|. l lヘ: : : : : :|    まあ、いやらしい。
          \:::L_」─‐-ンt云、└─- -┘ ィ乏ァ-.、─-:l  l. | ', ヽ: : : : |
         r.、:、:::∧ l∧イ;::::}`         ´{;イ:;::::::}ヾ| }  l  l  } 〉: : : :|
         | |:::::::::ヘ 弋;r:ユ           辷_;:r:.ソ l/  |  |  |,/: : : : :|
         | {、:::::::: ', ´               ̄ /      /│:. : : :|
         ヽ ヾ::::::::::!  " "          " "/          ノ:.: : : : l
          |ヘ ヽ::::::}、     、         /        /: : : : : : : ',
          |: :ヽ \::::`:.、     ヽ_フ   /        /: : : : : : : : : : ヽ
          |: :.:ィ\ \:::::::丶、       {       /|_,.-‐'" ̄ \: ヽ
         / |: : :ヽ  `ー==:≧ 、_   イ|      / /:::::::/       ヽ:.}
        /    l: : : :|       人:::::::::::|      l:.:/:::::::/         ヽ
         |    ヽ: : l        /、  ̄ ̄|      l/:::::::/          |
         |     ∨      /::::::: ̄ ̄ |      |::::::/            |
         |      /      /::::::::::::::::::::::|      l::::::{            |
0489login:Penguin2010/10/10(日) 18:30:46ID:Sp+agnVp
そのAAを壁紙にしたい
0490login:Penguin2010/10/11(月) 18:54:49ID:VGide9Wk
pythonって,vbaみたいな位置付けだな
0491login:Penguin2010/10/19(火) 16:15:51ID:EWnEpHL/
GTK+を使ってプログラムを作ると、MacOSXでボロボロな結果になるから使わないほうがいい。
0492login:Penguin2010/10/19(火) 17:17:34ID:2NWEe5/4
位置づけとは微妙
pythonは、VBAほど腐ってはいないぞ

ところでVBAの近代化って進んでいるのか?
Access VBA甘グラマ供の再利用は由々しき問題ぜよ
0493login:Penguin2010/10/19(火) 19:29:33ID:mjCBYhC0
VBAも.netが使えるっぽいから、近代化進んだんじゃないの?
0494login:Penguin2010/10/19(火) 19:47:43ID:/Nj/keXZ
>>491
どう考えてもGTKが悪いのではなく糞マックが悪いと思うんだが。
0495login:Penguin2010/10/19(火) 19:49:07ID:Ux5sdFhe
どっちが悪いという話はしていないと思う。
0496login:Penguin2010/10/19(火) 20:39:28ID:2NWEe5/4
>>493
そうなの?
ttp://www.microsoft.com/japan/msdn/vba/
なんて2003年でとまってんだけど、更新が。
0497login:Penguin2010/10/19(火) 21:38:06ID:mjCBYhC0
>>496
[HOWTO] Microsoft Office で Visual Basic for Applications から Visual Basic .NET クラス ライブラリを呼び出す方法
http://support.microsoft.com/kb/317535/ja

こういう事が出来るらしい。
けど一般的じゃないっぽいね。
まぁ互換性失われるし一般的にはならないように感じられるな…
0498login:Penguin2010/10/20(水) 16:42:06ID:dibJXxnt
>>494
GTK+がマルチプラットフォームになるように吸収するんだろ?
だったら、Macは悪くない。

かと云って、「GTK+が悪い」と云うのはおこがましい。
文句云っていいのは、それ相当のものを作れる人だけだ。
0499login:Penguin2010/10/20(水) 16:59:50ID:nkUeeiMO
>>498
「同じようなモノをつくれるひとでなければ批評してはいけない」というのなら

・linuxの○○の部分が悪いといっていいのはOS開発者だけ
・ゲームの○○が面白くないといっていいのはゲーム開発者だけ
・携帯電話の○○が使いづらいといっていいのは端末開発者だけ
・新作映画のストーリーラインを批判していいのは映画監督だけ

そういうのって言論封殺っていわない? オープンソース風土とはだいぶ違う文化じゃない?
0500login:Penguin2010/10/20(水) 17:17:25ID:xVoAed/u
WindowsでもLnFはぼろぼろだよね。
0501login:Penguin2010/10/20(水) 21:35:34ID:9tE6IJS+
osxのgtk+ってx window版とネイティブ版とあるんじゃなかったっけ?
0502login:Penguin2010/10/22(金) 10:57:35ID:i0oNjkXQ
Windows7でも見た目が最悪になるからな。
MacOSXみたいに日本語入力ができないとか絶望的ってほどではないが。
0503login:Penguin2010/10/22(金) 11:53:18ID:r2m3k6+H
Pythonバインドでも同じ問題って起こるの?

今日からPython勉強してGUIなアプリを作ってみようと思っていたのだが・・。
Qtのほうがいいのかな。でも、GNOME使ってるしGtkがいいんだよな
0504login:Penguin2010/10/22(金) 22:39:01ID:T3dIa7zi
そんなあなたにPythonでもC++でもPerlでもokの

wxGlade
http://wxglade.sourceforge.net/

はどうかな?
0505login:Penguin2010/10/24(日) 07:46:05ID:Vhl0qsDm
残念だが、日本語云々の話はWindows1.0のレベルにも達していないというのが現実。
開発体制の問題だろうね。
0506login:Penguin2010/10/24(日) 22:57:17ID:uho4GCjV
酷いと思うけどさすがに1.0はないだろ
それに日本語(2バイト文字)関連はGtkよりQtのが酷いしマシな方
0507login:Penguin2010/10/26(火) 18:03:28ID:XGIO2f11
GtkTreeView内のテキスト(gtk_cell_renderer_text_newで設定したもの)がカラムの幅を超えたら自動的に折り返して次の行に表示するようにできませんかね?
現状はカラムの幅を超えた部分は消えてしまいます。自分で改行を入れた場合は次の行に表示されるので折り返しも出来そうな気はするのですが。
0508login:Penguin2010/10/26(火) 18:05:34ID:O6NRu0pw
ttp://library.gnome.org/devel/gtk/unstable/GtkCellRendererText.html#GtkCellRendererText--wrap-mode
0509login:Penguin2010/10/26(火) 18:32:48ID:XGIO2f11
>>508
ありがとうございます!
0510login:Penguin2010/11/02(火) 19:29:02ID:0mcR1TdE
TreeView内にGtkCellRendererTextでテキストを表示する場合に、一部の文字だけ色を変えたり太字にしたりすることは可能でしょうか?
あるいはTreeViewにGtkEditableを格納するようなことができればそれでもよいのですが。
0511login:Penguin2010/11/02(火) 19:41:27ID:RVdg5wgR
>>510
pango markupで対応するんじゃね?
0512login:Penguin2010/11/04(木) 13:45:22ID:xBpDemuD
>>511
g_object_set (renderer, "markup","ab<b>cd</b>e", NULL);
とかでできました。ありがとう!
0513login:Penguin2010/11/07(日) 14:39:48ID:qFCSAFkG
GtkTextIterのリファレンス読んでて、iterって単語がいっぱい出てくるけど
これって、日本語に訳すとどういう単語が適切なのかな?
iteratorで「反復子、繰り返しの概念」って出てきて、いまいち意味がつかめず
iterって出てくると、まったくもって意味がわからん。
ググっても、熱核融合炉とか出てくるし…
0514login:Penguin2010/11/07(日) 14:43:10ID:Um+oFuZb
イテレータはイテレータだよ
ループの抽象化
0515login:Penguin2010/11/07(日) 14:57:51ID:qFCSAFkG
>>514
iteratorとiterは、まったく同じと考えりゃいいということ?
0516login:Penguin2010/11/08(月) 06:15:04ID:Wxghvts2
>>515
正確な話は分からないけど、Gtkで出てくる?Iterの類は"位置を指す物"と理解してる。
GtkTextIterでいうと、GtkTextBuffer中のどこかの位置を指す。
イテレータだと、意味するものが広くてピンとこない感じがする。
かといって、訳す場合に他にいい単語があるかは分からない。
0517login:Penguin2010/11/08(月) 06:20:30ID:Wxghvts2
ごめん、文字化けした
"?Iter"は"なんとかIter"ってことね
0518login:Penguin2010/11/08(月) 20:12:16ID:M/miEbwJ
>>516
ものすごく参考にさせていただく。ありがとう。
0519login:Penguin2010/11/09(火) 00:55:32ID:Tw+0pcNe
C++のイテレータはポインタと同じ動作をするものと考えられている。
ポインタのようなものっていう概念が一番しっくり来る。
0520login:Penguin2010/11/13(土) 16:17:20ID:Pqzt35wF
>>519
ものすごく返答が遅くなったけど、感謝します。
0521login:Penguin2010/11/22(月) 02:59:05ID:PS3m5Gby
GTK+のリファレンスを見てると、ところどころに
"… is deprecated and should not be used in newly-written code."
ってのが、出てきます。
「推奨しないし、使うなよ」って意味だけど、どうすればいいの?
公開する予定の無いプログラムだから、無視して使ってるけど。
0522login:Penguin2010/11/22(月) 03:05:51ID:9McU1lSw
他のやり方があるはず
0523login:Penguin2010/11/24(水) 15:54:13ID:euuHJfN4
GtkTreeViewでアクティブなRowをハイライトして色を反転させる
機能を無効にすることはできますでしょうか?
自分の環境ですとアクティブなRowは青い背景に白い文字でハイライト
されてしまいます。
RowのSelected状態は変えることができるのですが、そちらはRowが
Select時に灰色っぽくなるだけで問題ないのです。ハイライトの機能
の方を無効したいです。
0524login:Penguin2010/11/29(月) 21:54:46ID:sMx9z6BS
button = gtk_button_new_from_stock (GTK_STOCK_CANCEL);
と、ボタンにアイコンを付けようとしても、アイコンが出てきません。
上の場合、「キャンセル(_C)」というラベルだけ出ます。
メニューバーにアイコンを付けようとしても、アイコンが出ません。
何か欠けてるんでしょうか?
0525login:Penguin2010/11/29(月) 22:14:12ID:lGrvc++f
gtk_button_set_image()の説明に"gtk-button-images"の設定によると書いてあるから調べてみて
0526login:Penguin2010/11/29(月) 22:34:36ID:sMx9z6BS
>>525
ありがとう。今から調べます。
0527login:Penguin2010/11/29(月) 22:58:14ID:sMx9z6BS
他に同じく悩む人がいるとは思えませんが、解決したのでご報告。
525さんにヒントいただいて、devhelp読んで、ググったら下のとこが出た。
http://ubuntuforums.org/showthread.php?t=1135510
ここの逆をやって、アイコンが出ました。ありがとう。
0528login:Penguin2010/11/29(月) 23:22:35ID:OgcvDSer
>>527
つーか、俺もこれずっと悩んでた。
原因が分かってスッとしたよ。ありがとう!
0529login:Penguin2010/11/30(火) 12:55:40ID:M+63bYwL
>>527
ありがとう!!
0530login:Penguin2010/11/30(火) 16:19:03ID:TQa7Ptpz
>>527
なんかよくわかんないけど、オレからもありがとう!
0531login:Penguin2010/11/30(火) 21:51:44ID:o02+ms48
>>527
なんのことかわからんけど、俺からもありがとう!
0532login:Penguin2010/12/01(水) 23:14:33ID:xPo+2HeT
MinGWでWindowsむけにGTK+アプリをクロスコンパイルしている人はいるのだろうか。
Windows上で環境構築せずにすむから楽そうなんだけれど。
0533login:Penguin2010/12/02(木) 00:56:21ID:zqStIY3v
>>532
最近のFedoraはmingw関連のパッケージがたくさん追加されているから
Windows向けのクロスコンパイルは簡単だよ。
0534login:Penguin2010/12/02(木) 08:40:09ID:TtpWl3rj
Fedoraかぁ…。
調べてがんばってみる。
0535login:Penguin2010/12/03(金) 13:50:17ID:G8uZw67f
TreeViewでCellRendererTextで描画してるカラムについてなんですけど、CellRendererTextにwrap-widthを設定した場合、そのカラムをwrap-width以下にリサイズすることができなくなってしまいます。何か回避方法はありますか?

欲を言えばwarp-widthがカラムの幅に対して自動的に変わるようにしたいです。
0536login:Penguin2010/12/03(金) 14:43:06ID:nwQzeTfG
なんかいまいちな気がするけど
http://www.islascruz.org/html/index.php?blog/show/Wrap-text-in-a-TreeView-column.html
0537login:Penguin2010/12/03(金) 16:46:38ID:G8uZw67f
>>536
おお、pythonだけどCでも全然いけそうな対処ですね。
ありがとうございます!
0538login:Penguin2010/12/13(月) 14:42:35ID:GOtpVrpZ
GtkTreeViewで質問です。
gtk_tree_view_set_grid_linesで水平のグリッドラインを表示した状態でcell-background-gdkを使ってセルの背景色を設定しているのですが、色をつけたセルだけグリッドラインが消えてしまいます。何か解決方法ってありますか?
0539login:Penguin2011/01/09(日) 09:14:57ID:urRBMp8d
GTKを利用したプログラミングの勉強をしているのですが、不明な点があり質問させていただきます。

GTKにて作成したウインドウを常に最前面に表示しておきたいのですが、
それを実現するにはどのようにすればよいでしょうか?

ビュアーのようなものを作っているのですが、他の作業をしながらも確認したいため
他のウインドウより手前に表示しておくことが出来ればと考えております。
0540login:Penguin2011/01/09(日) 09:42:27ID:geIJW/Gp
>>539
>GTKにて作成したウインドウを常に最前面に表示しておきたいのですが、

WM(ウィンドーマネージャ)側の設定で、できるんじゃないのかな。
0541login:Penguin2011/01/09(日) 12:54:14ID:98wyOWKO
gtk_window_set_keep_aboveというのがあるが、うまくいくかはWMに依存する
0542login:Penguin2011/01/09(日) 13:28:00ID:urRBMp8d
>>541
ありがとうございます。
うまく動きました。
0543login:Penguin2011/01/10(月) 15:25:42ID:pdeWcU/o
おっさんにもわかるPYTHONの
”ウィンドウを表示するために--クラスを作成する” で

>> self.wTree.add_from_file(os.path.dirname(os.path.abspath(__file__))+"/"+self.gladefile)
のところで
glib.GError: root 要素が間違っています: 'glade-interface'

となり止まってしまいます。どなたか解決方法がわかる方お願いします
0544login:Penguin2011/01/10(月) 16:41:54ID:lxMobblK
しらんが
os.path.join(os.path.dirname(__file__), self.gladefile)
とかな
05455432011/01/10(月) 17:33:42ID:pdeWcU/o
最初から作り直してわかったんですがgladeのほうの設定がおかしくなってたみたいでした
ご迷惑おかけしました

0546login:Penguin2011/01/11(火) 21:47:15ID:vH5X5SgR
Gtkのアプリケーションを勉強しているのですがわからないことがあります。

TreeViewを利用して、計算結果が順次追加されていくアプリケーションを制作しているのですが、
計算結果が追加されていくに連れて結果を見るにはスクロールが必用になっております。
自動でスクロールを一番下に持って行くにはどのようにすればいいのでしょうか?

理想としては、スクロールが一番下にされていれば、リストが追加されるたびに常に一番下に
スクロールされ、スクロールが途中になっていれば項目が増えてもスクロールは維持。
というふうにしたいです。
ScrolledWindowのset_vadjustmentを利用すればいいことはわかったのですが、
うまく動かすことができません。
0547login:Penguin2011/01/11(火) 23:29:55ID:5lRRaNMx
多分ちゃんとしたやり方ではないけれども http://ideone.com/5B9PD
0548login:Penguin2011/01/12(水) 00:28:52ID:vB7prOwP
便乗質問

gtk.TreeViewColumnで幅を指定しているときにその幅を超える文字列は折り返したいんだけど、オプションが見当たらない。
オプションってないの?
■ このスレッドは過去ログ倉庫に格納されています