トップページ⇒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/
0002login:Penguin2007/09/05(水) 14:09:00ID:b1/CEVO9
Ruby-GNOME2 Win32 GUI Installer
http://ruby-gnome2.sourceforge.jp/?News_20070212_1
0003login:Penguin2007/09/05(水) 14:16:20ID:2SORZMjm
-参考になるサイト-
http://larse-gtk.hp.infoseek.co.jp/gtk.html
http://kota.steeludon.com/gtk/
http://www.hakodate-ct.ac.jp/~tokai/tokai/gtkmm/
http://gtklab.sourceforge.jp/gtkwin/
0004login:Penguin2007/09/05(水) 14:28:30ID:bwt0DIPX
>>1
おつ。前のスレは落ちたんだよね。

関連スレ
Gtkプログラミング on Windows!!!
http://pc11.2ch.net/test/read.cgi/tech/1147024203/
0005login:Penguin2007/09/05(水) 22:56:25ID:cjdtil+H
何か見ないなって思ってたら落ちてたのか。
glade-3.3.4とanjuta-2.2.0の組み合わせで使っている人は、
anjutaのソースの中で
sed -i 's/glade_project_get_has_unsaved_changed/glade_project_get_modified/g' \
plugins/glade/plugin.c
としておかないとgladeファイルが開けないので注意。
0006login:Penguin2007/09/05(水) 23:18:58ID:6zMwszt6
>>5
使えるな〜と思ったら、gladeの開発版を使っているのですね。
情報Tnx

GNOME-2.20でanjutaが入らないみたいなので残念です。
0007login:Penguin2007/09/06(木) 00:50:05ID:O0ecg2ks
まあまだ使いにくい所もあるしね。個人的にはもうちょっとScintillaベースの
エディタのフォント設定をもうちょっと楽にしてもらいたかったり。
後GtkBuilderに早い所対応してくれないかな。まあこれはGlade待ちなんだけど。
0008login:Penguin2007/09/06(木) 19:24:35ID:cMxVF+yM
Gtk関係のヘッダは
gtk-1.2/gtk/hoge とか
gtk-2.0/gtk/hoge にあるのに、
gtk.hを筆頭にgtk/以下のヘッダは全て
gtk/hoge をincludeしてあるのでエラー出まくります。

置換スクリプト作ってgtk/以下のヘッダの
#include<gtk/hoge> を #include<gtk-1.2/gtk/hoge> に
修正しまくるしかないのでしょうか?
何か対処法があれば教えてください。

関係あるか分かりませんが環境はubuntu7.04/Feistyです。
0009login:Penguin2007/09/06(木) 19:44:27ID:EzCswhTZ
コンパイルオプションに
`gtk+-2.4 pkg-config --cflags --libs`
付け加える
0010login:Penguin2007/09/06(木) 22:14:16ID:jVEAROlh
>>9
ありがとうございます。
gcc hoge.c `pkg-config --cflags --libs gtk+-2.0` でいけました!
--libsのはpkg-config --list-all の中から選べばいいんですね。凄い。

gladeだと色んなファイルがごちゃごちゃしてるので、
1ファイルでコンパイル出来るのがちょっと感動的です。
0011login:Penguin2007/09/15(土) 18:11:58ID:l0zyDoAp
GTKのオブジェクトにMozillaを組み込むにはどうすればいいんでしょうか?
0012login:Penguin2007/09/15(土) 22:43:40ID:NKI8HvUy
昔のGTK1.2で作られている日本語がばけて表示されるソフトを
日本語対応させるのって難しいですか?
0013login:Penguin2007/09/16(日) 00:10:58ID:gopQQAh6
>>11
gtkmozembed
ってFAQレベルの気が・・・
0014login:Penguin2007/09/16(日) 17:16:00ID:szZ43l1O
GTKのアイコンってどのファイルに含まれてるのでしょうか?
画像がない時にでる赤い×印のmissingアイコンになるのですが
ファイルがわかれば他のバージョンの高いディストリから
持ってこようと思ってます
0015login:Penguin2007/09/16(日) 18:03:08ID:nKbLcQMO
>>14
そうゆうプログラムを作るという話?
0016login:Penguin2007/09/16(日) 18:14:10ID:xPVEAZTR
Qtの方がおもしろいよ!!
0017login:Penguin2007/09/16(日) 20:19:22ID:Faddvszk
>>14
本当に基本的なアイコンはGTKの中に組み込まれてるけど、
大体その前に/usr/share/icons(pixmaps?)以下にあるアイコンテーマが読み出される。
アイコンテーマについては以下を参照
ttp://tango.freedesktop.org
0018login:Penguin2007/09/17(月) 03:57:01ID:W3kOm0S+
2.12りりーす
0019login:Penguin2007/09/17(月) 20:46:29ID:Rov63cpp
>>17
icon-theme入れたら表示されました
どうもです
0020112007/09/18(火) 09:46:06ID:7RZGKs31
>>13
ありがとうございます。

gcc でmozembedをLINKするときのoptionってどなたかご存じないでしょうか?
0021login:Penguin2007/09/18(火) 20:28:53ID:u0v3LdR2
>>20
$ pkg-config --libs firefox-gtkmozembed.pc
でいいんじゃない?
0022202007/09/19(水) 08:33:16ID:Sg4DTI1c
>>21
実行して mozillaのobject を gtk_container_add( ) するとエラーを吐いてまだ動作しませんがビルドできるようになりました。
ありがとうございました。
0023login:Penguin2007/09/19(水) 11:09:35ID:n7MsIjqh
topやnetstatなどの基本的なCUIコマンドをGtkを使ってGUI化したものってないかな?
TreeViewで簡単にsortを掛けることができるような...
なければ自分で造ろうとしているのだけど、既存のものあれば参考にしたい。

TreeViewの各要素にlabelを埋め込んで、このlabelをCUIコマンドで得られる
データーにあわせて変更するような、力づくなコーディングをしてみたんだけど
もっとエレガントな方法はないものか...
0024login:Penguin2007/09/19(水) 23:19:21ID:HUCusNQ/
qtで充分じゃない?
0025login:Penguin2007/09/19(水) 23:47:15ID:NIZBsTRK
>>23
topみたいなのだったらgnome-system-monitorとか?
0026login:Penguin2007/09/20(木) 01:24:41ID:7HBhJoi6
>>25
ありがとう。ソースみてみるわ。普段gnomeじゃないんで盲点でした。

>>24
志村、スレタイスレタイw
Qtスレってあるんかね?
0027login:Penguin2007/09/20(木) 04:29:38ID:jv4IvgQU
>>26
ム板にある
http://pc11.2ch.net/test/read.cgi/tech/1130300775/
0028login:Penguin2007/09/22(土) 22:29:28ID:mUDAWFkC
http://pc11.2ch.net/test/read.cgi/linux/1145835844/
0029login:Penguin2008/03/20(木) 13:39:07ID:oScjO3eR
Firefox3別にGTK対応しなくてよかったんだがなぁ

統一感出たのはいいが見た目がしょぼい……
0030login:Penguin2008/03/21(金) 08:04:49ID:JTozrZN4
Linux 上でのGTK+プログラミングの本スレは、ここ?
廃れすぎてるよ。

プログラミング板に行った方がいいのかな?
でも、プログラミング板のは、Windows限定だしな...
0031login:Penguin2008/03/21(金) 10:35:43ID:3ULYcj2H
本来はム板でやるべきだろうな。
こっちでやりたいなら何か話題振ってみれば?
0032login:Penguin2008/03/22(土) 21:13:17ID:AyZW6HyO
それじゃあ
みなさんの開発環境(IDE)は何を使ってますか?
オレはAnjuta+glade
もっと優れたIDEあるのなら教えてほしい
0033login:Penguin2008/03/22(土) 21:33:51ID:ldkQa/0V
IDEは使っていない。SATAだから。(前半本当)
0034login:Penguin2008/03/22(土) 21:37:55ID:AyZW6HyO
>>33
ハイハイワラタワラタ
それで何をつかってる?
0035login:Penguin2008/03/22(土) 21:39:06ID:ldkQa/0V
だからIDE使ってないってば。javaじゃあるまいし。
0036login:Penguin2008/03/22(土) 21:59:17ID:AyZW6HyO
>>35
吊れますか?
IDE(Integrated Development Environment:統合開発環境)

widestudioとか kylixとか
0037login:Penguin2008/03/22(土) 22:01:53ID:aYSHgKNt
エクリプス、最近ようやくAUTOTOOLSと一緒に使う方法が分かってきた。
ANJUTAのヘルプナビは便利だけど他の部分はCDTのがよいからなあ。
0038login:Penguin2008/03/22(土) 22:06:40ID:lxQ3nqhW
でもちょっと本腰入れて書こうってなったときはIDE使うとかなり便利だよ。
ちなみに俺もanjuta+glade使ってる。
そういえば誰かGtkBuilderを使ってる人とかいる?
俺はまだlibgladeから抜け出せないよ。
0039login:Penguin2008/03/22(土) 22:08:12ID:lxQ3nqhW
>38の一行目は>35宛て
0040login:Penguin2008/03/22(土) 22:13:46ID:ldkQa/0V
>>36
だから釣りじゃなくて使ってないと何度言えば。聞いたから答えただけ。
javaだとIDE使うケースが多いだろ?eclipseとかさ。

make gcc glade ・・・viでconfigure/makefileをゴリゴリだよ。
こんなん好きずきだろ。
0041login:Penguin2008/03/22(土) 22:19:12ID:gdnM02dF
IDE使ってないだけで釣り扱いとは……
0042login:Penguin2008/03/23(日) 01:33:29ID:zAd/2L2S
俺Ubuntu 7.10使ってるんだけど、パッケージマネージャ(GUI)でインストール
できるバージョンのAnjutaの動作がおかしいので仕方なくgeditのみ。

だれか必要なツールを含めたAnjuta環境の簡単なインストール方法知ってたら
教えてくれまいか。ネットを参考にしてソースから手作業でやろうとしたんだが、
複雑&面倒過ぎで挫折しますたorz
0043login:Penguin2008/03/23(日) 10:17:18ID:OBasJEH+
私は今は普通にUbuntu7.10でanjuta使えてます。
Ubuntu7.10のベータの頃は確かに挙動がおかしかったので
しょっちゅう落ちまくってましたが。

入れたのは「anjuta」と名のつくパッケージと、wxGtkのdev関係のVer2.8を片っ端から。

ちなみに今はanjutaの新規プロジェクトで選択できるwxWidgetsプロジェクトが一番楽なので
頼り切ってます。
0044login:Penguin2008/03/23(日) 11:17:19ID:1HFMv5Qv
gedit
GNOME端末
ddd
0045login:Penguin2008/03/23(日) 14:53:17ID:oxSgYePU
kylixなんて久しぶりに聞いたな…。
0046login:Penguin2008/03/23(日) 18:19:48ID:DWfALAId
開発環境の話はこっちで。

開発環境スレ (・∀・)デヴェロォォォップ!!
http://pc11.2ch.net/test/read.cgi/linux/1039282447/
0047login:Penguin2008/03/24(月) 01:38:53ID:Qk/VKx6p
GTK+2の話もここでいいの?
0048login:Penguin2008/03/24(月) 02:38:12ID:xdVA6Pwk
いいんじゃない?
つーかプログラム系のスレはどこも廃れてんだから
あんまりわけることないよ。

ム板でって話もあるが
そもそもLinuxからプログラミングの話抜いたら
インスコの話しかのこらん。
0049login:Penguin2008/03/24(月) 21:13:51ID:w0tQmto2
anjutaをなんとか動かそうとむきになってたけど、自分はgladeが吐いたソースを
ビルドできれば満足なことに気がついた。

gladeでぐぐって出てきたページを参考にやったら簡単にできたorz
0050login:Penguin2008/03/24(月) 21:16:44ID:q1u759xh
2.13.Xからはgailが統合されるみたいだね。思い切ったことするなぁ
0051login:Penguin2008/03/25(火) 21:27:24ID:f22Hmaea
>49
glade2のソースを吐く機能っていうのは確かに手軽だけど、
吐くソースがobsoloteになってしまうとか、色々と不具合の温床になりそうだから、
glade3での機能廃止もしょうがないと思っちゃうんだよね。

所で、gtk-docで作る文書の国際化って結構めんどいね。
html2poと自作スクリプトで頑張ってみようかなって思ってるけど、
なかなかスマートにいかないや。
0052login:Penguin2008/03/25(火) 22:04:32ID:Mm1m5DLO
>>51
う〜ん、それなんかなかったかなぁ?どっかでみたような。すまん思い出せん。
0053login:Penguin2008/04/29(火) 19:11:04ID:26XTARAt
こんにちは
質問があります、gtkを使ったプログラミングをしたいのですが
コンパイルがうまくいきません
Vine Linuxを使っています。
% rpm -qa | grep gtk+
gtk+-1.2.10-0vl6
となっていますが
% gtk-config
gtk-config: コマンドが見つかりません.
となってしまいます、なぜでしょうか?
0054login:Penguin2008/04/29(火) 19:17:39ID:cCcJpKWp
vineってgtk1しか入ってないの?
deb系はよく知らないけどdevelみたいなのが必要なのかね。
0055login:Penguin2008/04/30(水) 12:15:31ID:tQtvI8CE
Vine が deb 系!?
0056login:Penguin2008/05/30(金) 13:13:29ID:kzcW1sj3
>>53
vineの事は良くわからんけども、
見たところvine4.2では
gtk2-2.8.20-0vl3.2.i386.rpm
gtk2-devel-2.8.20-0vl3.2.i386.rpm
gtk2-engines-2.7.4-0vl1.i386.rpm
があるようなので、
>>53の使ってるvineのver.はわからないが、
開発パッケージが入ってないだけなんじゃないのかね?
例えばgtk+-devel-1.2.10-0vl6.i386.rpmみたいな感じの…。
0057562008/05/30(金) 13:16:35ID:kzcW1sj3
って日付見たらひと月前の質問か…
てっきり昨日質問したのかと…
0058login:Penguin2008/05/30(金) 14:22:37ID:ann5FY58
はじめまして。
gtkでプログラミングをしているのですが、うまくいきません。

01.jpgから10.jpgまでの数字の画像を使って
クリックしたらカウントダウンさせようと思っています。
現在は、

GtkWidget *drawingarea;
GtkPixbuf *pixbuf;

pixbuf = gdk_pixbuf_new_from_file( "10.jpg", NULL);
gdk_draw_pixbuf( drawingarea->window, NULL, pixbuf,
0, 0, 500, 350, -1, -1, GDK_RGB_DITHER_NONE, 0, 0);
gtk_widget_draw( drawingarea, NULL);

sleep( 1);

pixbuf = gdk_pixbuf_new_from_file( "09.jpg", NULL);
gdk_draw_pixbuf( drawingarea->window, NULL, pixbuf,
0, 0, 500, 350, -1, -1, GDK_RGB_DITHER_NONE, 0, 0);
gtk_widget_draw( drawingarea, NULL);

sleep( 1);

のようにしていますが、うまく1秒置きに画像が表示されません。
強制的に再描画させる方法などありましたら教えてください。
お願いします。
0059login:Penguin2008/05/30(金) 14:43:11ID:GKY/CzaG
while (gtk_events_pending()) gtk_main_iteration();
を挟むとか。

g_timeout_addを使う方法もあるね。
0060login:Penguin2008/05/30(金) 15:17:07ID:ann5FY58
ありがとうございます。
while (gtk_events_pending()) gtk_main_iteration();
でうまく動きました。
助かりました。
■ このスレッドは過去ログ倉庫に格納されています