トップページ⇒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/
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で幅を指定しているときにその幅を超える文字列は折り返したいんだけど、オプションが見当たらない。
オプションってないの?
0549login:Penguin2011/01/12(水) 00:47:08ID:5/uHApeb
gtk.CellRendererTextのwrap-width
05505482011/01/12(水) 18:24:47ID:vB7prOwP
>>549
ありがとう
CellRenderTextのほうで折り返しが設定出来たのか。
考えてみると、確かに折り返すのはTextだね。

関連でもうひとつ質問させてください
TreeViewColumnをset_resizable( True)にしているんだけど、カラムがリサイズされたときはどこのシグナルがでる?
自分なりに捜してみたのだけど、みつからない、。
0551login:Penguin2011/01/12(水) 19:26:21ID:B0eGTMcl
GTKなんて時代遅れ
0552login:Penguin2011/01/12(水) 21:39:01ID:DAHnc8sL
時代はQ'tだってか?www
05535482011/01/12(水) 21:41:05ID:vB7prOwP
上に同じ質問がありましたね。
検索に出て気づきました。

すみません。ありがとうございました。
0554login:Penguin2011/01/13(木) 18:44:21ID:XeFPXStO
ねらのみなさんに質問させていただきます。

正確にはGTK#なんですがGTK+でもいいです。
ウィンドウを常に最背面に表示する方法はありますか?
検索するとこんなのが見つかったのですが、
#include <gdk/gdk.h>
#include <gdk/gdkx.h>
#include <gtk/gtk.h>
#include <X11/Xatom.h>
#define WIN_LAYER_DESKTOP 0
#define WIN_HINTS_SKIP_WINLIST (1<<1)
#define WIN_HINTS_SKIP_TASKBAR (1<<2)

#define XA_WIN_LAYER "_WIN_LAYER"
#define XA_WIN_HINTS "_WIN_HINTS"
ーーーーーーーーーーーーーーーーー

/* windowを一番下に置く */
data[0] = WIN_LAYER_DESKTOP;
gdk_property_change(GTK_WIDGET(window)->window,
gdk_atom_intern(XA_WIN_LAYER, False),
(GdkAtom) XA_CARDINAL, 32, PropModeReplace,
(unsigned char *) data, 1);

/* taskbarやwinlistにこのwindowを表示させないようにする */
data[0] = WIN_HINTS_SKIP_WINLIST | WIN_HINTS_SKIP_TASKBAR;
gdk_property_change(GTK_WIDGET(window)->window,
gdk_atom_intern(XA_WIN_HINTS, False),
(GdkAtom) XA_CARDINAL, 32, PropModeReplace,
(unsigned char *) data, 1); 

XA_CARDINALってなんでしょう?? 上記ソース by http://www.host.or.jp/cgi-win/webboard/wb_cont.exe?programing+g+10016+NAME
0555login:Penguin2011/01/13(木) 20:04:15ID:yufk+Tn2
そのURLは叩きたくない

本家にいきましょう
GTK#本家
http://www.mono-project.com/GtkSharp

関連スレ
[Not Gtk+] Gtk#質問スレッド [mono]
http://hibari.2ch.net/test/read.cgi/linux/1294642865/
0556login:Penguin2011/01/13(木) 20:14:13ID:Q+1lsYEj
>>554
荒らしてんじゃねーよカス
0557login:Penguin2011/01/13(木) 20:18:51ID:XeFPXStO
>>556
煽り厨キター
0558login:Penguin2011/01/13(木) 20:20:21ID:XeFPXStO
連投すいません。
本家のフォーラムで聞いてみようと思います。
0559login:Penguin2011/01/14(金) 03:23:12ID:KnKuBbAY
初心的な質問でスミマセンが

pythonでglade3でつくったLabelの内容を変更するには
どう直したらよいか教えていただけますか?
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import os.path
import gtk
import gtk.glade
class counterGTK:
def __init__(self):
self.gladefile = 'var0.1.glade'
self.wTree = gtk.Builder()
self.wTree.add_from_file(略)
# count number
self.number1 = 0
dic = {
"on_clicked1" : self.on_clicked1 ,
"on_clicked2" : self.on_clicked2 ,
"on_window1_destroy" : self.on_window1_destroy }
self.wTree.connect_signals(dic)
self.mainWindow = self.wTree.get_object("window1")
self.mainWindow.show_all()
def on_window1_destroy(self, widget):
gtk.main_quit()
def on_clicked1(self, widget, event=None):
self.number1 += 1
# !!!ここが変と表示が出ます。
self.mainWindow.set_text(str(self.number1))
if __name__ == "__main__":
略
0560login:Penguin2011/01/14(金) 09:50:28ID:QJfXyK10
プログラム
http://hibari.2ch.net/tech/
0561login:Penguin2011/01/15(土) 22:11:43ID:KQmBhVmm
>>559
set_titleじゃ駄目?
0562login:Penguin2011/01/17(月) 01:04:20ID:VJob0is5
ブラウザやエディタの上で、
マウスカーソルの下にあるテキストを取得する単純な
方法ってあるんでしょうか?ダブルクリックすると反転する単語
を取り込みたいのですが。出来ればトリプルクリックで反転する
一行も一緒に取り込みたいです。


0563login:Penguin2011/01/17(月) 01:09:27ID:VJob0is5
すいません、アプリケーションによって
トリプルクリックでの反転の仕様は違うようですが、

マウス位置が所属するパラグラフ、単語、行を同時にとりこみたいのです。
言い忘れましたが想定する言語は英語などアルファベットのものです。
0564login:Penguin2011/01/19(水) 01:15:17ID:AHjWAb2g
GTK+3.0のリリースが楽しみだなぁ
Windows版とかMac版の出来が気になる
0565login:Penguin2011/01/21(金) 13:29:12ID:oTTqy+gy
>>561
遅れてすみません
self.mainWindow.set_title(str(self.number1))
に直すとウィンドウのタイトル欄の方に表示
おかげで一歩前進できたありがとうございました
0566login:Penguin2011/01/25(火) 22:03:31ID:93ZVq4E+
家計簿のようなものを作りながらPyGTKの勉強をしております。
TreeViewを使ってリストを作成しているのですが、

ID 値段 名前 メモ
1 100 コーラ 自販機
2 200 カルピス 自販機

のようなリストがあるとして、リスト中を右クリックすると編集メニューを出すようにしたいのですが、
右クリックした際にメニューを出す方法や、右クリックした列の値の取得方法がわからず悩んでおります。

どのようなコードで実現できるでしょうか?
0567login:Penguin2011/01/25(火) 22:15:19ID:3NJ+mNNa
>>566
自分で調べる気はないのかね?
http://lmgtfy.com/?q=gtk+treeview+popup+menu
0568login:Penguin2011/01/25(火) 23:38:42ID:93ZVq4E+
>>567
いろいろなワードで調べてみたのですが、見つけることができませんでした。
>>567の検索候補も見てみたのですが、TreeViewで右クリックした時の処理はあるのですが、
右クリックした行の値を取得する方法はありませんでした。
0569login:Penguin2011/01/25(火) 23:55:07ID:p4XnSN29
>>568
テストしてないけど、gtk.TreeView.get_selection()で取れない?
0570login:Penguin2011/01/26(水) 06:42:35ID:n1B9dBtN
VBoxにLabelやEntryをいくつか配置すると高さが全て均等になりますが、高さを設定するにはどうすればいいですか?
0571login:Penguin2011/01/26(水) 08:43:37ID:LEML9YPE
ぴーな?
0572login:Penguin2011/01/26(水) 09:51:05ID:z74Fwadf
GTK+を使ってシリアルポートで自作ハードウェアと通信することは出来ますか?
0573login:Penguin2011/01/26(水) 11:33:09ID:h7bjSSMJ
>>572
自作ハードウェアが動くか知りませんが、「gtk シリアルポート」でググると
アホみたいに検索結果が出てきますが。
http://www.linuxquestions.org/questions/programming-9/gtk-serial-port-communication-313238/
http://sourceforge.net/projects/gcomm/
05745702011/01/27(木) 04:23:46ID:HXLIqy/B
HBOXでは高さの指定ができないのですかね
0575login:Penguin2011/01/28(金) 11:05:05ID:Gptdpqjn
すいません、教えてください。
ubuntuにて、pixmapにgdk_draw_stringで日本語を表示させたいのですが、文字化け
し、下記のメッセージが出ます。
does not support all the required character sets for the current locale "ja_JP.utf8"
どのようにしたら正常に表示できるようになるでしょうか。
0576login:Penguin2011/01/29(土) 01:44:56ID:6hO1Bdmk
ロケールやフォントを変更したらどうだろうか?
0577login:Penguin2011/01/29(土) 02:07:22ID:l0OT+bD3
gdk_draw_ナントカはdeprecated
cairo使ってね
■ このスレッドは過去ログ倉庫に格納されています