- 1 名前:login:Penguin [2007/09/05(水) 13:58:46 ID:2SORZMjm]
- GUIツールキットであるGTK+とその周辺技術についてのスレッド
-前スレ- pc11.2ch.net/test/read.cgi/linux/995808691/ -関連サイト- 本家 www.gtk.org/ APIレファレンス library.gnome.org/devel/gtk/stable/ gtkmm(C++ラッパー) www.gtkmm.org/ glade glade.gnome.org/ libglade www.jamesh.id.au/software/libglade/
- 2 名前:login:Penguin mailto:sage [2007/09/05(水) 14:09:00 ID:b1/CEVO9]
- Ruby-GNOME2 Win32 GUI Installer
ruby-gnome2.sourceforge.jp/?News_20070212_1
- 3 名前:login:Penguin [2007/09/05(水) 14:16:20 ID:2SORZMjm]
- -参考になるサイト-
larse-gtk.hp.infoseek.co.jp/gtk.html kota.steeludon.com/gtk/ www.hakodate-ct.ac.jp/~tokai/tokai/gtkmm/ gtklab.sourceforge.jp/gtkwin/
- 4 名前:login:Penguin mailto:sage [2007/09/05(水) 14:28:30 ID:bwt0DIPX]
- >>1
おつ。前のスレは落ちたんだよね。 関連スレ Gtkプログラミング on Windows!!! pc11.2ch.net/test/read.cgi/tech/1147024203/
- 5 名前:login:Penguin mailto:sage [2007/09/05(水) 22:56:25 ID: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ファイルが開けないので注意。
- 6 名前:login:Penguin mailto:sage [2007/09/05(水) 23:18:58 ID:6zMwszt6]
- >>5
使えるな〜と思ったら、gladeの開発版を使っているのですね。 情報Tnx GNOME-2.20でanjutaが入らないみたいなので残念です。
- 7 名前:login:Penguin mailto:sage [2007/09/06(木) 00:50:05 ID:O0ecg2ks]
- まあまだ使いにくい所もあるしね。個人的にはもうちょっとScintillaベースの
エディタのフォント設定をもうちょっと楽にしてもらいたかったり。 後GtkBuilderに早い所対応してくれないかな。まあこれはGlade待ちなんだけど。
- 8 名前:login:Penguin [2007/09/06(木) 19:24:35 ID: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です。
- 9 名前:login:Penguin mailto:sage [2007/09/06(木) 19:44:27 ID:EzCswhTZ]
- コンパイルオプションに
`gtk+-2.4 pkg-config --cflags --libs` 付け加える
- 10 名前:login:Penguin mailto:sage [2007/09/06(木) 22:14:16 ID:jVEAROlh]
- >>9
ありがとうございます。 gcc hoge.c `pkg-config --cflags --libs gtk+-2.0` でいけました! --libsのはpkg-config --list-all の中から選べばいいんですね。凄い。 gladeだと色んなファイルがごちゃごちゃしてるので、 1ファイルでコンパイル出来るのがちょっと感動的です。
- 11 名前:login:Penguin [2007/09/15(土) 18:11:58 ID:l0zyDoAp]
- GTKのオブジェクトにMozillaを組み込むにはどうすればいいんでしょうか?
- 12 名前:login:Penguin [2007/09/15(土) 22:43:40 ID:NKI8HvUy]
- 昔のGTK1.2で作られている日本語がばけて表示されるソフトを
日本語対応させるのって難しいですか?
- 13 名前:login:Penguin mailto:sage [2007/09/16(日) 00:10:58 ID:gopQQAh6]
- >>11
gtkmozembed ってFAQレベルの気が・・・
- 14 名前:login:Penguin [2007/09/16(日) 17:16:00 ID:szZ43l1O]
- GTKのアイコンってどのファイルに含まれてるのでしょうか?
画像がない時にでる赤い×印のmissingアイコンになるのですが ファイルがわかれば他のバージョンの高いディストリから 持ってこようと思ってます
- 15 名前:login:Penguin mailto:sage [2007/09/16(日) 18:03:08 ID:nKbLcQMO]
- >>14
そうゆうプログラムを作るという話?
- 16 名前:login:Penguin mailto:age [2007/09/16(日) 18:14:10 ID:xPVEAZTR]
- Qtの方がおもしろいよ!!
- 17 名前:login:Penguin mailto:sage [2007/09/16(日) 20:19:22 ID:Faddvszk]
- >>14
本当に基本的なアイコンはGTKの中に組み込まれてるけど、 大体その前に/usr/share/icons(pixmaps?)以下にあるアイコンテーマが読み出される。 アイコンテーマについては以下を参照 ttp://tango.freedesktop.org
- 18 名前:login:Penguin mailto:sage [2007/09/17(月) 03:57:01 ID:W3kOm0S+]
- 2.12りりーす
- 19 名前:login:Penguin mailto:sage [2007/09/17(月) 20:46:29 ID:Rov63cpp]
- >>17
icon-theme入れたら表示されました どうもです
- 20 名前:11 [2007/09/18(火) 09:46:06 ID:7RZGKs31]
- >>13
ありがとうございます。 gcc でmozembedをLINKするときのoptionってどなたかご存じないでしょうか?
- 21 名前:login:Penguin mailto:sage [2007/09/18(火) 20:28:53 ID:u0v3LdR2]
- >>20
$ pkg-config --libs firefox-gtkmozembed.pc でいいんじゃない?
- 22 名前:20 mailto:sage [2007/09/19(水) 08:33:16 ID:Sg4DTI1c]
- >>21
実行して mozillaのobject を gtk_container_add( ) するとエラーを吐いてまだ動作しませんがビルドできるようになりました。 ありがとうございました。
- 23 名前:login:Penguin mailto:sage [2007/09/19(水) 11:09:35 ID:n7MsIjqh]
- topやnetstatなどの基本的なCUIコマンドをGtkを使ってGUI化したものってないかな?
TreeViewで簡単にsortを掛けることができるような... なければ自分で造ろうとしているのだけど、既存のものあれば参考にしたい。 TreeViewの各要素にlabelを埋め込んで、このlabelをCUIコマンドで得られる データーにあわせて変更するような、力づくなコーディングをしてみたんだけど もっとエレガントな方法はないものか...
- 24 名前:login:Penguin [2007/09/19(水) 23:19:21 ID:HUCusNQ/]
- qtで充分じゃない?
- 25 名前:login:Penguin mailto:sage [2007/09/19(水) 23:47:15 ID:NIZBsTRK]
- >>23
topみたいなのだったらgnome-system-monitorとか?
- 26 名前:login:Penguin mailto:sage [2007/09/20(木) 01:24:41 ID:7HBhJoi6]
- >>25
ありがとう。ソースみてみるわ。普段gnomeじゃないんで盲点でした。 >>24 志村、スレタイスレタイw Qtスレってあるんかね?
- 27 名前:login:Penguin mailto:sage [2007/09/20(木) 04:29:38 ID:jv4IvgQU]
- >>26
ム板にある pc11.2ch.net/test/read.cgi/tech/1130300775/
- 28 名前:login:Penguin mailto:sage [2007/09/22(土) 22:29:28 ID:mUDAWFkC]
- pc11.2ch.net/test/read.cgi/linux/1145835844/
- 29 名前:login:Penguin [2008/03/20(木) 13:39:07 ID:oScjO3eR]
- Firefox3別にGTK対応しなくてよかったんだがなぁ
統一感出たのはいいが見た目がしょぼい……
- 30 名前:login:Penguin mailto:sage [2008/03/21(金) 08:04:49 ID:JTozrZN4]
- Linux 上でのGTK+プログラミングの本スレは、ここ?
廃れすぎてるよ。 プログラミング板に行った方がいいのかな? でも、プログラミング板のは、Windows限定だしな...
- 31 名前:login:Penguin mailto:sage [2008/03/21(金) 10:35:43 ID:3ULYcj2H]
- 本来はム板でやるべきだろうな。
こっちでやりたいなら何か話題振ってみれば?
- 32 名前:login:Penguin [2008/03/22(土) 21:13:17 ID:AyZW6HyO]
- それじゃあ
みなさんの開発環境(IDE)は何を使ってますか? オレはAnjuta+glade もっと優れたIDEあるのなら教えてほしい
- 33 名前:login:Penguin mailto:sage [2008/03/22(土) 21:33:51 ID:ldkQa/0V]
- IDEは使っていない。SATAだから。(前半本当)
- 34 名前:login:Penguin [2008/03/22(土) 21:37:55 ID:AyZW6HyO]
- >>33
ハイハイワラタワラタ それで何をつかってる?
- 35 名前:login:Penguin mailto:sage [2008/03/22(土) 21:39:06 ID:ldkQa/0V]
- だからIDE使ってないってば。javaじゃあるまいし。
- 36 名前:login:Penguin [2008/03/22(土) 21:59:17 ID:AyZW6HyO]
- >>35
吊れますか? IDE(Integrated Development Environment:統合開発環境) widestudioとか kylixとか
- 37 名前:login:Penguin mailto:sage [2008/03/22(土) 22:01:53 ID:aYSHgKNt]
- エクリプス、最近ようやくAUTOTOOLSと一緒に使う方法が分かってきた。
ANJUTAのヘルプナビは便利だけど他の部分はCDTのがよいからなあ。
- 38 名前:login:Penguin mailto:sage [2008/03/22(土) 22:06:40 ID:lxQ3nqhW]
- でもちょっと本腰入れて書こうってなったときはIDE使うとかなり便利だよ。
ちなみに俺もanjuta+glade使ってる。 そういえば誰かGtkBuilderを使ってる人とかいる? 俺はまだlibgladeから抜け出せないよ。
- 39 名前:login:Penguin mailto:sage [2008/03/22(土) 22:08:12 ID:lxQ3nqhW]
- >38の一行目は>35宛て
- 40 名前:login:Penguin mailto:sage [2008/03/22(土) 22:13:46 ID:ldkQa/0V]
- >>36
だから釣りじゃなくて使ってないと何度言えば。聞いたから答えただけ。 javaだとIDE使うケースが多いだろ?eclipseとかさ。 make gcc glade ・・・viでconfigure/makefileをゴリゴリだよ。 こんなん好きずきだろ。
- 41 名前:login:Penguin mailto:sage [2008/03/22(土) 22:19:12 ID:gdnM02dF]
- IDE使ってないだけで釣り扱いとは……
- 42 名前:login:Penguin mailto:sage [2008/03/23(日) 01:33:29 ID:zAd/2L2S]
- 俺Ubuntu 7.10使ってるんだけど、パッケージマネージャ(GUI)でインストール
できるバージョンのAnjutaの動作がおかしいので仕方なくgeditのみ。 だれか必要なツールを含めたAnjuta環境の簡単なインストール方法知ってたら 教えてくれまいか。ネットを参考にしてソースから手作業でやろうとしたんだが、 複雑&面倒過ぎで挫折しますたorz
- 43 名前:login:Penguin mailto:sage [2008/03/23(日) 10:17:18 ID:OBasJEH+]
- 私は今は普通にUbuntu7.10でanjuta使えてます。
Ubuntu7.10のベータの頃は確かに挙動がおかしかったので しょっちゅう落ちまくってましたが。 入れたのは「anjuta」と名のつくパッケージと、wxGtkのdev関係のVer2.8を片っ端から。 ちなみに今はanjutaの新規プロジェクトで選択できるwxWidgetsプロジェクトが一番楽なので 頼り切ってます。
- 44 名前:login:Penguin mailto:sage [2008/03/23(日) 11:17:19 ID:1HFMv5Qv]
- gedit
GNOME端末 ddd
- 45 名前:login:Penguin mailto:sage [2008/03/23(日) 14:53:17 ID:oxSgYePU]
- kylixなんて久しぶりに聞いたな…。
- 46 名前:login:Penguin mailto:sage [2008/03/23(日) 18:19:48 ID:DWfALAId]
- 開発環境の話はこっちで。
開発環境スレ (・∀・)デヴェロォォォップ!! pc11.2ch.net/test/read.cgi/linux/1039282447/
- 47 名前:login:Penguin mailto:sage [2008/03/24(月) 01:38:53 ID:Qk/VKx6p]
- GTK+2の話もここでいいの?
- 48 名前:login:Penguin mailto:sage [2008/03/24(月) 02:38:12 ID:xdVA6Pwk]
- いいんじゃない?
つーかプログラム系のスレはどこも廃れてんだから あんまりわけることないよ。 ム板でって話もあるが そもそもLinuxからプログラミングの話抜いたら インスコの話しかのこらん。
- 49 名前:login:Penguin mailto:sage [2008/03/24(月) 21:13:51 ID:w0tQmto2]
- anjutaをなんとか動かそうとむきになってたけど、自分はgladeが吐いたソースを
ビルドできれば満足なことに気がついた。 gladeでぐぐって出てきたページを参考にやったら簡単にできたorz
- 50 名前:login:Penguin mailto:sage [2008/03/24(月) 21:16:44 ID:q1u759xh]
- 2.13.Xからはgailが統合されるみたいだね。思い切ったことするなぁ
- 51 名前:login:Penguin mailto:sage [2008/03/25(火) 21:27:24 ID:f22Hmaea]
- >49
glade2のソースを吐く機能っていうのは確かに手軽だけど、 吐くソースがobsoloteになってしまうとか、色々と不具合の温床になりそうだから、 glade3での機能廃止もしょうがないと思っちゃうんだよね。 所で、gtk-docで作る文書の国際化って結構めんどいね。 html2poと自作スクリプトで頑張ってみようかなって思ってるけど、 なかなかスマートにいかないや。
- 52 名前:login:Penguin mailto:sage [2008/03/25(火) 22:04:32 ID:Mm1m5DLO]
- >>51
う〜ん、それなんかなかったかなぁ?どっかでみたような。すまん思い出せん。
- 53 名前:login:Penguin [2008/04/29(火) 19:11:04 ID:26XTARAt]
- こんにちは
質問があります、gtkを使ったプログラミングをしたいのですが コンパイルがうまくいきません Vine Linuxを使っています。 % rpm -qa | grep gtk+ gtk+-1.2.10-0vl6 となっていますが % gtk-config gtk-config: コマンドが見つかりません. となってしまいます、なぜでしょうか?
- 54 名前:login:Penguin mailto:sage [2008/04/29(火) 19:17:39 ID:cCcJpKWp]
- vineってgtk1しか入ってないの?
deb系はよく知らないけどdevelみたいなのが必要なのかね。
- 55 名前:login:Penguin mailto:sage [2008/04/30(水) 12:15:31 ID:tQtvI8CE]
- Vine が deb 系!?
- 56 名前:login:Penguin mailto:sage [2008/05/30(金) 13:13:29 ID: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みたいな感じの…。
- 57 名前:56 mailto:sage [2008/05/30(金) 13:16:35 ID:kzcW1sj3]
- って日付見たらひと月前の質問か…
てっきり昨日質問したのかと…
- 58 名前:login:Penguin [2008/05/30(金) 14:22:37 ID: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秒置きに画像が表示されません。 強制的に再描画させる方法などありましたら教えてください。 お願いします。
- 59 名前:login:Penguin mailto:sage [2008/05/30(金) 14:43:11 ID:GKY/CzaG]
- while (gtk_events_pending()) gtk_main_iteration();
を挟むとか。 g_timeout_addを使う方法もあるね。
- 60 名前:login:Penguin [2008/05/30(金) 15:17:07 ID:ann5FY58]
- ありがとうございます。
while (gtk_events_pending()) gtk_main_iteration(); でうまく動きました。 助かりました。
- 61 名前:login:Penguin [2008/06/01(日) 12:51:26 ID:Qfk/evfC]
- 質問ばかりですみません。
スタートをクリックしたらマウスカーソルを10秒間消したいと思っています。 カーソルを透明にしてやればいいと思うのですが、 よくわかりません。 よい方法がありましたら教えてください。
- 62 名前:login:Penguin mailto:sage [2008/06/01(日) 14:26:49 ID:vBepI6CX]
- #!/usr/bin/python
import pygtk import gtk, gobject win = gtk.Window() win.set_default_size(200, 200) win.connect('destroy', gtk.main_quit) def create_invisible_cursor(): pixmap = gtk.gdk.Pixmap(None, 1, 1, 1) color = gtk.gdk.Color() return gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0) def on_clicked(button): old = win.window.set_cursor(create_invisible_cursor()) def after(): win.window.set_cursor(old) gobject.timeout_add(10 * 1000, after) button = gtk.Button('Start') button.connect('clicked', on_clicked) win.add(button) win.show_all() gtk.main()
- 63 名前:login:Penguin mailto:sage [2008/06/01(日) 14:46:30 ID:vBepI6CX]
- ちょっと修正
#!/usr/bin/python import pygtk; pygtk.require("2.0") import gtk, gobject win = gtk.Window() win.set_default_size(200, 200) win.connect('destroy', gtk.main_quit) def create_invisible_cursor(): pixmap = gtk.gdk.Pixmap(None, 1, 1, 1) color = gtk.gdk.Color() return gtk.gdk.Cursor(pixmap, pixmap, color, color, 0, 0) def on_clicked(button): win.window.set_cursor(create_invisible_cursor()) button.set_sensitive(False) def after(): win.window.set_cursor(None) button.set_sensitive(True) gobject.timeout_add(10 * 1000, after) button = gtk.Button('Start') button.connect('clicked', on_clicked) win.add(button) win.show_all() gtk.main()
- 64 名前:login:Penguin [2008/06/01(日) 15:01:10 ID:Qfk/evfC]
- ありがとうございます。
c言語でコーディングしているのでcで書いていただければ。。。 すみませんcしかわからないもので。 GdkCursor cursor; gchar bits[32] = { 0}; GdkBitmap *bitmap; GdkColor color = {0, 0, 0, 0}; bitmap = gdk_bitmap_create_from_data(NULL, bits, 16, 16); cursor = gdk_cursor_new_from_pixmap(bitmap, bitmap, &color, &color, 8, 8); gdk_window_set_cursor(window, cursor); 現在はこれでとりあえずカーソルを消してみようとしたのですが、 assertion 'window != NULL' failedとでてしまって消えない状態です。
- 65 名前:login:Penguin mailto:sage [2008/06/01(日) 15:32:14 ID:vBepI6CX]
- 試してみたらそれでうまく動くようだが。
gdk_window_set_cursor() の呼び出しはちゃんとしてる?
- 66 名前:login:Penguin [2008/06/01(日) 15:36:53 ID:Qfk/evfC]
- ちょっと修正です。
GtkWidget window; GdkCursor cursor; gchar bits[32] = { 0}; GdkBitmap *bitmap; GdkColor color = {0, 0, 0, 0}; bitmap = gdk_bitmap_create_from_data(NULL, bits, 16, 16); cursor = gdk_cursor_new_from_pixmap(bitmap, bitmap, &color, &color, 8, 8); gdk_window_set_cursor(window->window, cursor); これで実行すると、 gdk_window_set_cursor:assertion 'window != NULL' failed と出ているので呼び出しでエラーになっていると思います。
- 67 名前:login:Penguin mailto:sage [2008/06/01(日) 15:41:29 ID:vBepI6CX]
- #include <gtk/gtk.h>
int main(int argc, char *argv[]) { GtkWidget *window; GdkCursor *cursor; GdkBitmap *bitmap; gchar bits[32] = {0}; GdkColor color = {0, 0, 0, 0}; gtk_init(&argc, &argv); window = gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(G_OBJECT(window), "destroy", gtk_main_quit, NULL); gtk_widget_show(window); bitmap = gdk_bitmap_create_from_data(NULL, bits, 16, 16); cursor = gdk_cursor_new_from_pixmap(bitmap, bitmap, &color, &color, 8, 8); gdk_window_set_cursor(window->window, cursor); gtk_main(); return 0; }
- 68 名前:login:Penguin mailto:sage [2008/06/01(日) 15:45:23 ID:vBepI6CX]
- gtk_widget_realize() 前の widget->window を触ろうとしてるのが原因かな?
- 69 名前:login:Penguin mailto:sage [2008/06/01(日) 16:04:31 ID:wQKPJ8Cz]
- 古いバージョンGtkを使ってたりしない?昔そういうのでハマったおぼえがある
- 70 名前:login:Penguin [2008/06/01(日) 16:10:28 ID:Qfk/evfC]
- 67のようにしたらエラーはでませんけど、カーソルは透明になりません。
windowの上に、水平ボックスや垂直ボックスをパッキングしているから gdk_window_set_cursor(window->window, cursor); で消えないとかはありますか? gtk_widget_realizeについて調べてみます。 gtk-config --version をしたら1.2.10とでてきました。
- 71 名前:login:Penguin [2008/06/01(日) 16:17:00 ID:Qfk/evfC]
- gtk_widget_realizeしても状況変わらずです。
ソースはこうなってます。 int main( int argc, char *argv[]) { GtkWidget *window; /* メインウインドウ */ GtkWidget *test_window; /* テストウインドウ */ GtkWidget *button_start; /* スタートボタン */ GtkWidget *button_quit; /* 終了ボタン */ GtkWidget *hbox; /* 垂直ボックス */ GtkWidget *vbox; /* 水平ボックス */ GtkWidget *separator; /* セパレーター */ GtkWidget *drawingarea; /* 描画領域 */ GdkPixbuf *pixbuf; gchar bits[32] = { 0}; GdkBitmap *bitmap; GdkColor color = {0, 0, 0, 0}; GdkCursor *cursor; /* 初期化 */ gtk_init( &argc, &argv); window = gtk_window_new( GTK_WINDOW_TOPLEVEL); drawingarea = gtk_drawing_area_new(); vbox = gtk_vbox_new( FALSE, 0); hbox = gtk_hbox_new( FALSE, 0); button_start = gtk_button_new_with_label( "Start"); button_quit = gtk_button_new_with_label( "Quit"); separator = gtk_hseparator_new();
- 72 名前:login:Penguin [2008/06/01(日) 16:17:54 ID:Qfk/evfC]
- /* ウインドウを画面サイズに合わせる */
gtk_window_resize( GTK_WINDOW( window), gdk_screen_width(), gdk_screen_height()); /* delete_eventが発生したらdelete_eventを実行する */ g_signal_connect( G_OBJECT( window), "delete_event", G_CALLBACK( delete_event), NULL); /* 水平ボックスの中にスタートボタンと終了ボタンをパッキング */ gtk_box_pack_start( GTK_BOX(hbox), button_start, TRUE, FALSE, 5); gtk_widget_show( button_start); gtk_box_pack_start( GTK_BOX(hbox), button_quit, TRUE, FALSE, 5); gtk_widget_show( button_quit); /* 垂直ボックスの中にテストウインドウと水平ボックスをパッキング */ gtk_box_pack_start( GTK_BOX(vbox), drawingarea, TRUE, TRUE, 0); gtk_widget_show( drawingarea); gtk_box_pack_start( GTK_BOX(vbox), separator, FALSE, TRUE, 5); gtk_widget_show( separator); gtk_box_pack_start( GTK_BOX(vbox), hbox, FALSE, FALSE, 0); gtk_widget_show( hbox);
- 73 名前:login:Penguin [2008/06/01(日) 16:20:38 ID:Qfk/evfC]
- /* メインウインドウに垂直ボックスをパッキング */
gtk_container_add( GTK_CONTAINER( window), vbox); gtk_widget_show_all( window); bitmap = gdk_bitmap_create_from_data( NULL, bits, 16, 16); cursor = gdk_cursor_new_from_pixmap( bitmap, bitmap, &cursor_color, &cursor_color, 8, 8); gdk_window_set_cursor( drawingarea->window, cursor); gtk_main(); return 0; }
- 74 名前:login:Penguin mailto:sage [2008/06/01(日) 16:46:47 ID:vBepI6CX]
- 2.12.9 だけど、それでちゃんと動くよ
- 75 名前:login:Penguin [2008/06/01(日) 16:51:52 ID:Qfk/evfC]
- ありがとうございます。
バージョンをあげてからやってみます。
- 76 名前:login:Penguin mailto:sage [2008/06/02(月) 16:55:12 ID:2n4LDSUT]
- gtk+プログラミングについてお薦めの本とか出てないのでしょうか?
不勉強で付属のチュートリアルだといまひとつ良くわからなかったもので…。
- 77 名前:login:Penguin mailto:sage [2008/06/02(月) 17:09:32 ID:vhO0kEsD]
- 日本語の本で勧められるようなのはないみたいです。
どっかの大学の先生が書いたPDFが参考になるかもしれません。 www.iim.ics.tut.ac.jp/~sugaya/books/GUI-ApplicationProgramming/ 個人的にはC言語以外の他の言語バインディングを使うのがおすすめです。 www.gtk.org/language-bindings.html
- 78 名前:76 mailto:sage [2008/06/02(月) 18:02:10 ID:2n4LDSUT]
- >>77
早速教えていただいてありがとうございます。 参考にして勉強して行きますね。
- 79 名前:login:Penguin [2008/07/20(日) 20:11:46 ID:hZzIJHG7]
- AMD、OpenGL性能を最大33%高速化させたLinux向けドライバ
pc.watch.impress.co.jp/docs/2008/0630/amd.htm
- 80 名前:login:Penguin mailto:sage [2008/09/15(月) 23:03:03 ID:EmRnvQ2i]
- てs
- 81 名前:login:Penguin mailto:sage [2008/09/22(月) 21:01:49 ID:8vBcGsdH]
- Panedでユーザ操作によるリサイズを禁止することってできますか?
- 82 名前:login:Penguin mailto:sage [2008/10/18(土) 23:02:28 ID:3BBs8DQQ]
- >>77
gtkmmかGtk#辺りが無難なのかなぁ。 GNOME公式のアプリにもC#で書かれたモノが増えてきているようだし。 外国ではPythonで書かれたアプリも沢山あるみたいだけど、 国内だと情報が少なそうだしな。
- 83 名前:login:Penguin mailto:sage [2008/10/18(土) 23:10:39 ID:QtgieN1g]
- どうせ英語は読むことになるからpythonでやるのが無難
GNOMEにはpythonアプリたくさんあるしね
- 84 名前:login:Penguin mailto:sage [2008/10/18(土) 23:12:21 ID:7K6B6OYK]
- Gtk#はないな。gtkmmでしょう。
- 85 名前:login:Penguin mailto:sage [2008/10/18(土) 23:13:41 ID:HfwrrshF]
- Cでシコシコやろうとしてる/やってる俺はどうなんでしょ
- 86 名前:login:Penguin mailto:sage [2008/10/19(日) 00:01:40 ID:fwxWu968]
- とりあえずgtkmm関連の日本語のページを読みながらチマチマと勉強中。
JDのソースとか参考になるかなぁ。 > どうせ英語は読むことになるから ですよねーorz日本語の情報少ないもんなぁ… > Gtk#はないな そうなのか? Novellが関わってるのがアレだけど、C#は覚えやすいと思うんだが。 >>85 > Cでシコシコ 漢
- 87 名前:login:Penguin mailto:sage [2008/10/19(日) 00:04:39 ID:f0AiiEyf]
- 自分で参照カウンタを管理するのはめんどい
- 88 名前:login:Penguin mailto:sage [2008/10/19(日) 12:37:59 ID:mBsqsk/K]
- いっそのことRubyでいこうよ。
- 89 名前:login:Penguin mailto:sage [2008/10/19(日) 14:31:15 ID:lf2/OYv6]
- linuxなら c, gtkmm + python で 鉄板だろ
移植性とかいいだすのが間違いのもと。 まずはc#, javaの排除から。 つーか、そういうのってmsやsunの儲けにしかならんよね、実際。
- 90 名前:login:Penguin mailto:sage [2008/10/19(日) 18:09:25 ID:ZgmXTrMt]
- 今、ruby-gtk2を使って簡単な画像ビューワを作っています。
デスクトップにフィットさせて表示(大きい場合は縮小表示)させたいのですが、 パネルとかウインドウマネージャの装飾を考慮して、画像を表示できる最大の サイズを知りたい場合、どうしたら良さそうですか? 探してはいるものの、なかなか良さそうな手が見つからないです。
- 91 名前:login:Penguin mailto:sage [2008/10/19(日) 19:54:56 ID:3IMHrYAs]
- gtk2hsにトライしたが、一部関数が無くてダメでした。まあこれからか。
erlgtk使いの人とかどう?
- 92 名前:login:Penguin mailto:sage [2008/10/19(日) 20:28:12 ID:Su20jt3Y]
- >>90
ウィンドウを maximize した時にでるシグナルの中でウィンドウ サイズを取得して、画像のサイズを拡大縮小とか。 これだと、ウィンドウが出てから画像が出るまで、間が空くか?
- 93 名前:90 mailto:sage [2008/10/20(月) 00:25:14 ID:s5JT3EOQ]
- >>92
レスありがとうございます。 やっぱり、そういうちょっと強引な方法しかないんですかね。 せっかく教えてもらったんですが、ちらつきそうなので、できれば避けたいです。 今は、スクリーンサイズを取ってきて適当なサイズで妥協しています。 何かあっても良さそうなのになぁ。。。
- 94 名前:login:Penguin mailto:sage [2008/10/20(月) 00:34:47 ID:upSqhUNX]
- >>93
"expose-event"シグナルかな、rubyであるのかは分からないけど
- 95 名前:login:Penguin mailto:sage [2008/10/20(月) 02:08:26 ID:RwkYMDWR]
- >>90
昔SunのJDKのソースを読んでいたことがあるんだが、当時のJDKの実装では、 1) 使われているwindow managerを特定 2) 有名(あるいは標準的と言うべき)なwindow managerであれば、 それぞれのwm固有の枠部分の装飾手段(Windowの重なり具合など) の知識を基に、今有るウィンドウの親を手繰ってwm由来部分を調査し wm由来部分のサイズを決定 3) 知らないwmは非サポートってことで適当に…… なんてことをしていた ここ数年で提案されてない限り、良い方法はないと思われ
- 96 名前:login:Penguin mailto:sage [2008/10/20(月) 05:08:18 ID:mB1jem32]
- 実際にmaximizeするしか知る方法はないだろう?
強引というならそれをやる前に知ろうとする方が強引のような。 それにGTK+はデフォでdouble-bufferedだから何も考えなくてもちらつきしない。
- 97 名前:login:Penguin mailto:sage [2008/10/20(月) 07:37:12 ID:DDLH0hrK]
- >>96
> 実際にmaximizeするしか知る方法はないだろう? > 強引というならそれをやる前に知ろうとする方が強引のような。 同意。それ以外のやり方してるソフトなんてないのでは?
- 98 名前:90 mailto:sage [2008/10/20(月) 21:27:41 ID:s5JT3EOQ]
- レスありがとうございます。
>>94 ごめんなさい、"expose-event"シグナルはrubyでもあるのですが、94さんの意図が よく理解できませんでした。 >>95 詳しい情報ありがとうございます。 Sunの人でさえ、そういう実装をされているくらいだから、簡単な方法は無さそうですね。 >>96,97 そんなことを簡単に知ろうという方が間違いですかね。 ちなみに、ちらつくと書いたのは、実際maximizeしてからサイズを取ってくるとすると 画面に表示することは避けられず、一瞬maximizeしたウインドウが見えてしまうという 意味で書きました。 まだGTKのシグナルがどんなタイミングで発行されるのか、よく理解できていないので 誤解しているかも知れませんが。
- 99 名前:94 mailto:sage [2008/10/20(月) 23:02:02 ID:upSqhUNX]
- >>98
すみません、>>90さんの要求を正しく理解していませんでした。 最大化できるサイズを求めるというのではなくて、あくまでアプリ側で必要な サイズ(GtkRequisition)と、実際に獲得できたサイズ(GtkAllocation) で実装するのはいかかでしょうか?
- 100 名前:login:Penguin mailto:sage [2008/10/21(火) 02:53:13 ID:5A1QOuH6]
- >>98
> まだGTKのシグナルがどんなタイミングで発行されるのか、よく理解できていないので > 誤解しているかも知れませんが。 どう考えてもこれがガンだろ。呆れた。
|

|