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/
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のシグナルがどんなタイミングで発行されるのか、よく理解できていないので > 誤解しているかも知れませんが。 どう考えてもこれがガンだろ。呆れた。
101 名前:90 mailto:sage [2008/10/21(火) 23:21:31 ID:rjo5j4+k] >>99 色々、考えて下さり、ありがとうございます。 >>100 まあ、そう言わんで下さい。 皆さんに教えて頂いたことをヒントに、時間が取れるときに もっと勉強しようと思います。 レスをしてくれた方々、ありがとうございました。
102 名前:login:Penguin mailto:sage [2008/10/22(水) 01:14:52 ID:1Hw6zT+4] 複数のファイルをユーザーに選択させ、そのファイルのパスをリストなり 配列なりで得たいと考えています。 調べてみたところ GtkFileChooserDialog は単一ファイル|ディレクトリ にしか対応していないようなのですが、上記のような機能は自前で実装す るしかないのでしょうか。
103 名前:login:Penguin mailto:sage [2008/10/22(水) 01:40:40 ID:TbaNGOlU] >>102 gtk_file_chooser_set_select_multiple() gtk_file_chooser_get_filenames() の組み合わせじゃ駄目なのかい?
104 名前:login:Penguin mailto:sage [2008/10/22(水) 10:25:49 ID:ApulL45s] >>103 ありがとうございます。完璧に私の調査不足でした。 教えていただいた方法でいけそうです。
105 名前:login:Penguin mailto:sage [2008/10/25(土) 10:14:11 ID:dTl3thQm] glade3の最新版にしたらいつの間にかGtkBuilder形式でも出力できるようになってたよ。 さすがにウィンドウ別に分けて出力はしてくれないけど。
106 名前:login:Penguin mailto:sage [2008/10/25(土) 15:02:49 ID:AakIN1gI] PyGTKでランチャー作ってます ホットキーから呼び出すにはどうすれば やはりgconf弄らないと無理なのでしょうか。
107 名前:login:Penguin mailto:sage [2008/10/25(土) 17:13:44 ID:zQTl7fNi] どのウィンドウがフォーカスされている状態でもキー操作で呼び出したいってこと? そりゃXならウィンドウマネージャの仕事だ。
108 名前:login:Penguin mailto:sage [2008/10/25(土) 17:58:26 ID:AakIN1gI] >>107 そうです どんな操作してるときもホットキーから呼び出したいので PyGTK以外の言語は全く解らんのですがXLibあたりですかね これさえ備えられればほぼ完成なんです ありがとうございました。もう少し調べてみます
109 名前:login:Penguin mailto:sage [2008/10/25(土) 18:06:09 ID:e1TliF6D] >>108 それ俺も知りたい。分かったら教えてくれ。
110 名前:login:Penguin mailto:sage [2008/10/25(土) 18:20:20 ID:zQTl7fNi] >>108 ウィンドウマネージャにショートカットで任意のプログラムを呼び出すような 親切機能がついていればできる、なければ基本的にできない。
111 名前:login:Penguin mailto:sage [2008/10/25(土) 21:12:08 ID:UmyLPmdd] こんなんでどうよ #!/usr/bin/python import gtk, gobject import Xlib, Xlib.display, Xlib.X, Xlib.XK win = gtk.Window() win.connect('destroy', gtk.main_quit) win.show_all() display = Xlib.display.Display() root = display.screen().root root.grab_key( display.keysym_to_keycode(Xlib.XK.XK_a), # keycode Xlib.X.ShiftMask | Xlib.X.ControlMask, # modifier True, Xlib.X.GrabModeAsync, Xlib.X.GrabModeAsync) display.sync() def check(*args): ev = display.next_event() if ev.type == Xlib.X.KeyPress: print (ev.detail, ev.state) # (keycode, modifier) win.present() return True gobject.io_add_watch(display, gobject.IO_IN, check) gtk.main()
112 名前:login:Penguin mailto:sage [2008/10/26(日) 00:16:49 ID:cuuCZE3q] >>109-110 自分が得た情報はもちろん共有しますよ ウインドウマネージャってubuntuだとcompizでしたっけ? WindowsだとpyHookなんてのがあって楽そうなんですが >>111 走らせてみました 小さなウインドウは出ましたが、こちらではキーに反応しません a, <shift>a, <ctrl>aはダメでした。他のキーですか? 個人的にはこの辺が怪しいと思っていたのですが ttp://faq.pygtk.org/index.py?req=show&file=faq23.009.htp ttp://manpages.ubuntu.com/manpages/feisty/ja/man3/XGrabButton.html ttp://xjman.dsl.gr.jp/X11R6/X11/CH12.html PyGTKって日本語のドキュメントが少ないと思っていたけど それ以前にドキュメントの絶対数が少ない気がしてきた
113 名前:login:Penguin mailto:sage [2008/10/26(日) 00:20:34 ID:dWWl1VvV] >112 xbindkeysのソースが参考になるかもね。 でもgdkとgtkだけで済ませたい気もする。
114 名前:login:Penguin mailto:sage [2008/10/26(日) 01:05:43 ID:w1SELDT+] >>112 <shift><ctrl>aです
115 名前:login:Penguin mailto:sage [2008/10/26(日) 02:08:20 ID:cuuCZE3q] >>113 これCですか?現時点では意味不明でした。 やはり最低でも2言語くらい習得しないと細かい所が弄れませんね。 >>114 それも試してみましたが何故が無反応でした。 さらに一週間くらい調べてみます。
116 名前:login:Penguin mailto:sage [2008/10/27(月) 22:08:10 ID:hjSX5CJk] glade3といえば日本語メッセージの翻訳が迷訳てんこもりで参った記憶しかないぞ。 ありゃGTK+プログラミングろくに理解してない奴が訳してるんだろうなあ。
117 名前:login:Penguin mailto:sage [2008/11/02(日) 17:56:33 ID:8LwLmm0R] 出版界を見ると、GTK+よりもQtの方が元気があるように見えるんだけど、 ユーザ数ではどうなんだろう。日本でも最近出てる本はQtのだよね。
118 名前:login:Penguin mailto:sage [2008/11/02(日) 18:07:31 ID:f8W85vrO] 出版ではQtだが、実際にはgtkのほうが人気がある。 ユーザ数でもおそらくgtkのほうが多い。 なぜQtの本のうほうが多いのかは謎。 gtkの本ってなんであんなに少ないんだろうか。
119 名前:login:Penguin mailto:sage [2008/11/03(月) 12:00:13 ID:zVTwcnmi] 一つの指標として gnome vs kde ttp://www.google.co.jp/trends?q=GNOME%2CKDE&ctab=0&geo=all&date=all&sort=0 gtk vs qt ttp://www.google.co.jp/trends?q=gtk%2Cqt&ctab=0&geo=all&date=all&sort=0 ちなみにノルウェーではgnomeの人気が高いw
120 名前:login:Penguin mailto:sage [2008/11/03(月) 12:19:36 ID:f8RoxdRr] ネット上のドキュメントが充実してるからとか? 洋書も最近のはQtの が多いよね。 日本GNOMEユーザー会とKDE ホームページ(日本KDEユーザ会)の サイトを比べてみると、一見KDEの方が勢いがあるように見えるけど、 リンクのメンテがボロボロだな。
121 名前:login:Penguin mailto:sage [2008/11/03(月) 12:24:19 ID:f8RoxdRr] >>119 なんかKDE/Qtのが優勢な感じw
122 名前:login:Penguin mailto:sage [2008/11/03(月) 13:56:17 ID:7ydUuqhV] >>119 一部Quicktimeだったりしないか? www.sophia-it.com/content/%E3%82%AF%E3%82%A4%E3%83%83%E3%82%AF%E3%82%BF%E3%82%A4%E3%83%A0
123 名前:login:Penguin mailto:sage [2008/11/03(月) 22:01:57 ID:57+pbs2m] Ubuntu人気があるからgnomeのほうがユーザ多そうだけどな、実際どうなんだろな。 あと他言語のバインディングではgtkのほうが優勢な気がするんだがどうなんだろ。 QtHaskellとか使ってる人いる?俺はgtk2hs使ったけど使い物にならなかったよwww必要関数無くてwwww。
124 名前:login:Penguin mailto:sage [2008/11/03(月) 22:39:37 ID:iQkJfTcr] Ubuntu, Fedora, Debian, Vine(笑)とか標準ではたいがいgnomeだからね。 やっぱシェア(数)はやっぱgnomeが多いんじゃないの? KDEはOpenSUSE, Mandriva(turbo)とか。 まぁ前出のgnomeトリはたいがいKDEの派生つーかブランチもあるし 入れ替えたって(共存させたって)いいんだけどね。
125 名前:119 mailto:sage [2008/11/03(月) 23:02:36 ID:zVTwcnmi] >>122 一部ノーム(地名)だったりもするぜ
126 名前:login:Penguin mailto:sage [2008/11/03(月) 23:40:33 ID:CkL33X1G] ユーザーはともかく、クリエータはGTK(GNOME)の方が多いだろう GTKがLGPLなのに対して、QtはGPLか最近のtool kit としては高額の 有償ライセンスかのいずれか 利用できる人間は、どうしても限られてくる
127 名前:login:Penguin [2008/12/17(水) 15:27:32 ID:KRTiKwTi] 欲しいソフトがないから自分で作ろうと思う。 だが、どの言語もソースは読める程度、簡単な改造が出来る程度のレベルです。 だが、一からあのソフトを作りたい・・・。 そんな俺はどのようなGTK開発環境が良いとおもいますか? 今考えているのは、 Pygtk + grade の組み合わせです。 これを薦めるハッカーが多いのと、Pythonという言語がしっくりくるからです。 ほか、初心者におすすめのGTK開発環境がありましたら教えて下さい。
128 名前:login:Penguin mailto:sage [2008/12/17(水) 18:01:23 ID:lMmUsPdE] まあそのへんより簡単なのは無さそうだよね。自分はRubyが好きなので Rubyで勉強してるけど。
129 名前:vte [2008/12/17(水) 19:59:56 ID:4+kAQRIa] vte-0.17.4 を ./configure && make && make install してみたのだけど, 画面端で漢字入力を始めると, 折り返しも延長もしてくれず, 入力文字が見えなくなる. | ▽かんじに| のように. でも次のようになってほしいのだけど, | ▽かんじに| |ぅりょく | とか. gtk-demo の text-widget の multiple views などはうまくいってます. .gtkrc-2.0 とかに何か設定が必要でしょうか?
130 名前:login:Penguin mailto:sage [2008/12/22(月) 09:25:07 ID:Z0zqkFax] >>127 GTKmm
131 名前:login:Penguin mailto:sage [2008/12/23(火) 19:56:34 ID:3l8ZCr+m] ところでpygtkって遅くね? Core2Duoのマシンでボタンクリックしてからレスポンスが10秒後とかザラなんだが。 gtkmmとか生のgtkのほうがいいんじゃね?
132 名前:login:Penguin mailto:sage [2008/12/23(火) 20:16:59 ID:LQjeTU8C] gtkmmは地獄。
133 名前:login:Penguin mailto:sage [2008/12/23(火) 21:14:13 ID:2F34Up+Q] レスポンスが10秒後ってなんか間違えてるんじゃ
134 名前:login:Penguin mailto:sage [2008/12/23(火) 21:25:44 ID:ae4qT9Yd] PyGTK + glade3 の日本語チュートリアルのようなものありませんか? この辺りが翻訳されているのですが、glade3では動きませんでした・・。 po3a.blogspot.com/2006/08/pygtk-glade-gui.html po3a.blogspot.com/2006/08/pygtk-glade.html Rubyで勉強したほうが情報多い?
135 名前:134 mailto:sage [2008/12/23(火) 21:34:16 ID:ae4qT9Yd] こちらのサンプルは PyGTK + glade3 動きました。 ttp://palepoli.skr.jp/content/python/window1.php でもここから先が進めません。 PyGTK + glade3 で勉強になるサイトがあったら教えて下さい。 英語でもいいです。宜しくお願いします。
136 名前:login:Penguin mailto:sage [2008/12/24(水) 06:59:19 ID:aQCa49jr] pygtkのことは知らないんでよくわからないけど、これとかは? www.micahcarrick.com/12-24-2007/gtk-glade-tutorial-part-1.html これでだめなら、ウェブ全体からググれ。 ちなみにruby用の日本語チュートリアルはglade2使用。 ruby-gnome2.sourceforge.jp/ja/hiki.cgi?libglade2-tut
137 名前:134 mailto:sage [2008/12/24(水) 09:50:41 ID:hiOOXDc5] >>136 ありがとうございます。 参考になりました。
138 名前:login:Penguin mailto:sage [2008/12/24(水) 11:47:11 ID:j0KWvBZ+] C++/GTKで書いたプログラムを wxPythonで書き直したら wxPythonで作った方がサクサク速く動いた orz
139 名前:login:Penguin mailto:sage [2008/12/24(水) 14:47:02 ID:gkyqeyAR] windows上か?
140 名前:login:Penguin mailto:sage [2008/12/24(水) 15:36:14 ID:EbVd5uRZ] PHP-GTKってどうよ?
141 名前:login:Penguin mailto:sage [2008/12/26(金) 04:24:16 ID:0/dGPTTl] そんなのあるのか。今度試してみよう。
142 名前:login:Penguin mailto:sage [2008/12/26(金) 23:23:17 ID:Z/96o+8l] いまさらかもしれないが時代は今CAIROだということに気づいた journal.mycom.co.jp/series/firefox/005/ プラットフォームやハードウェアに依存せず精密な描画が可能になるらしい CAIRO使えるのはGTK+2.10から上のver 誰か使ってる人いる?
143 名前:login:Penguin mailto:sage [2008/12/27(土) 00:05:03 ID:7rBKxqYP] 時代を読み違えてるな。 ベクトルベースとか3DデスクトップとかVistaとともに沈んだよ。 PC肥大化狂騒曲は終わりだ。Qt4も総スカンだし
144 名前:login:Penguin mailto:sage [2008/12/27(土) 06:06:34 ID:B/jsjdnT] いやでも実際有名どころで使われてるわけだし それに素のGTKのみで描画するより処理速度は速くなるし, プラットフォーム間の互換性も高まると思う 別に肥大化してるわけじゃないしVistaや3Dデスクトップとはちょっと違うだろう gtkがcairoをサポートしてまだ日も浅いしむしろ今からが勝負
145 名前:login:Penguin mailto:sage [2008/12/27(土) 12:41:23 ID:6Qaozst9] ふつーに使ってる。フォントの取り扱いがプラットフォーム中立にできればなおいいのだが。
146 名前:login:Penguin mailto:sage [2008/12/27(土) 13:12:28 ID:IS4Ugvd/] Cairo のフォント描画は Windows 上だとジャギが目立つ。Linux 上では問題無し。 何か設定がいるのかしら。
147 名前:login:Penguin mailto:sage [2008/12/27(土) 20:23:11 ID:B/jsjdnT] 普通ベクトル・グラフィクスにジャギーは発生しない なにか間違ってることは間違いない
148 名前:login:Penguin mailto:sage [2008/12/27(土) 20:43:22 ID:6XGFKeOe] >>144 速くなるって、なんかベンチの結果でもあんの? skiaを用いているgoogle chromeのcanvasが爆速という話なら聞いたことがあるが >>146 普通にcairoをコンパイルすると、Windowsではcairo-win32-font.cが使われる これは普通にGDIを用いているので、普通のWindowsアプリのフォントの レンダリングと全く同じ結果になる 一方LinuxではFreeTypeが使われる
149 名前:login:Penguin mailto:sage [2008/12/27(土) 21:26:06 ID:mPWXe8Aq] a
150 名前:login:Penguin mailto:sage [2008/12/27(土) 22:20:00 ID:B/jsjdnT] >>148 firefox2とfirefox3の速度比較は 確証を裏づけるものにはならないか? 一般的にラスター描画よりベクトル描画の方がデータ数が少なく、描画速度は速いと言われているし ところでskiaて何?
151 名前:login:Penguin mailto:sage [2008/12/28(日) 10:40:10 ID:xJesvUS3] mexo hanaxo
152 名前:login:Penguin mailto:sage [2008/12/28(日) 11:37:59 ID:5NoVhFnO] >>145-146 フォント描画にはPangoを使えばいいんじゃないの?
153 名前:login:Penguin mailto:sage [2008/12/29(月) 18:19:47 ID:qsmFI5vI] >>150 ttp://www.hyuki.com/yukiwiki/wiki.cgi?VectorDrawing skiaは google chrome skia あたりでぐぐれ
154 名前:login:Penguin mailto:sage [2008/12/29(月) 22:41:52 ID:mdZmAujL] >>153 これはハードウェア実装のOpenGLによるベクタ描画と ソフトウェア実装のcairoによるベクタ描画の実験結果だな... ハードウェア実装だとプラットフォームやハードウェア環境の影響を受けるが ソフトウェア実装より格段に速度を上げられる だからこそcairoにもOpenGLによるハードウェアアクセラレーションのサポートがあるわけだが... でもビデオカードやらのGPU性能依存というのは それこそ3DデスクトップやらVistaやらのPC肥大化狂騒曲じゃないのか? ハードウェア実装を否定してるわけじゃないが これはアリなの? そこのところどうなんよ?
155 名前:login:Penguin mailto:sage [2008/12/29(月) 23:04:54 ID:qsmFI5vI] >>154 んー それを言うなら、GDIだってハードウェアアクセラレートされていて、 GDIがソフトウェアでエミュレートされるようになったWindows Vistaでは 実際描画が遅いのなんのと騒ぎになっていたわけだろ cairoは、下のレイヤの上に乗っかって、アンチエイリアス描画を行うから、 一般的には下のプリミティブをそのまま用いるのではなく、 pixmapの上にソフトウェアレンダリングを行う形になる だから結果は綺麗だが、それが高速化につながるという意見はさっぱりわからんね 皮をかぶせれば、ポータビリティは高まるかもしれんが、速くなるわけがないよ 個人的にちょっと試した限りでは、少なくともWindowsで普通にコンパイルした cairoは、遅いといわれるGDI+よりもまだ遅いぐらいだ 同種の競合ソフトのaggと比べても、やはり遅いな
156 名前:login:Penguin mailto:sage [2008/12/30(火) 02:24:04 ID:chmi7ht1] cairoの下のレイヤって何? cairoはGTK+/GDKやXlibの上にはない そもそもpixmapのようなラスタデータ上にベクタデータを ラスタライズしても綺麗な結果にはならない Vistaが重い一番の理由はVistaのコアが4Gとかのせいじゃなかったか?
157 名前:login:Penguin mailto:sage [2008/12/30(火) 03:17:23 ID:xp1VmVKW] >>156 > cairoの下のレイヤって何? > cairoはGTK+/GDKやXlibの上にはない ???? cairoは何らかのバックエンド(サーフェス)の上で描画を行うわけだが 一体何を言ってるんだ > そもそもpixmapのようなラスタデータ上にベクタデータを > ラスタライズしても綺麗な結果にはならない ビットマップディスプレイに、ラスタデータ以外をどうやって描画するんだ? ベクタグラフィックスだろうが3Dだろうが、ビットマップディスプレイに 描画するときは、*必ず*2Dラスタデータに落とす(=レンダリング) しなければ、描画のしようがないのだが、そんなことも知らないのか? レンダリングをソフトウェアで行うか、ハードウェアで行うかは 実装の問題だがな
158 名前:login:Penguin mailto:sage [2008/12/30(火) 03:38:55 ID:F99IYk+S] 他の領域に落としたらそれが遅くなる原因だしな。 絵の処理なら、cpuから見えるメモリ領域のビットマップに転送が遅くなる原因のno1。 cairoは、その辺がすべてバックエンド任せでさらにメモリ上でいじるので、 普通に使うと遅いソフト(cpu)処理の部類に分類される。 てか、cairoの中身でも描画なんかは一切触れずに、cairo_surface_tで共通化とでしか使ってないと思うんだけどどう?
159 名前:login:Penguin mailto:sage [2009/01/04(日) 04:31:10 ID:OlEL3WLc] 待てばcairoの日和あり
160 名前:login:Penguin mailto:sage [2009/01/04(日) 09:09:03 ID:Ls6s3Y+a] で?
161 名前:login:Penguin [2009/01/08(木) 14:49:56 ID:25IYEPJi] 初めて拝見するが、 ここの良スレ度にびっくりした。
162 名前:login:Penguin [2009/01/11(日) 10:45:28 ID:G50GhRZF] 「右」キーにアクションをバインドしたいんですが、どうすればできますか? 今は仕方なく gtk_widget_add_accelerator (foo, "activate", accel_group, GDK_Right, GDK_MODIFIER_MASK, GTK_ACCEL_VISIBLE); のようにしてますが、実際は GDK_MODIFIER_MASK 無しで「右」キーのみ で作用するようにしたいんです。
163 名前:login:Penguin mailto:sage [2009/01/12(月) 22:30:23 ID:Ap11sUPz] ところでさ、なんでGtkTreeViewColumnに gtk_tree_view_column_get_widthはあるのにgtk_tree_view_column_set_widthはないの? なんでカラムの幅を非常にまわりくどい方法でセットする事しかできないんだろう。
164 名前:login:Penguin mailto:sage [2009/01/13(火) 21:49:47 ID:4aexh9M5] バカ除けのため
165 名前:login:Penguin mailto:sage [2009/01/14(水) 06:35:18 ID:ON4hZt79] >>164 なにそれww
166 名前:login:Penguin mailto:sage [2009/01/14(水) 10:40:30 ID:hbYm8nJe] >>163 他のコラムに対する影響を考えないといけないからでないの? 推測だけど
167 名前:login:Penguin [2009/01/19(月) 07:00:18 ID:Zkvelgln] どうすればtoolbarを縦に位置させることができますか?
168 名前:login:Penguin mailto:sage [2009/01/19(月) 14:58:09 ID:rA2FfI0+] ディスプレーをガタンとですね
169 名前:login:Penguin mailto:sage [2009/01/19(月) 15:05:50 ID:Zkvelgln] >>168 ???
170 名前:login:Penguin mailto:sage [2009/01/20(火) 05:28:26 ID:N3/xwV6v] >>167 D&D
171 名前:login:Penguin mailto:sage [2009/01/20(火) 07:38:29 ID:eUZx4J2+] >>168 ワロタ
172 名前:167 [2009/01/21(水) 13:15:59 ID:cRTwudVb] >>168 真面目に答えていただけませんか? >>170 詳しく教えてください。
173 名前:login:Penguin mailto:sage [2009/01/21(水) 16:47:39 ID:oi/rQuGm] >>172 自分は真面目に調べたのか?
174 名前:login:Penguin [2009/01/21(水) 22:48:05 ID:zay9Vio9] >>167 まず言語は何でプログラミングしてるの? 個人的には盛り上がって欲しいスレではあるのだけれど。 CでガリガリGTKアプリ書いてる人あんまりいないのかな…
175 名前:167 mailto:sage [2009/01/22(木) 01:25:28 ID:qMqmINP5] >>174 C でやってます。
176 名前:login:Penguin mailto:sage [2009/01/22(木) 02:12:53 ID:N/oI0lI0] >>175 set_orientationでvertical指定 詳しくはググれ
177 名前:login:Penguin [2009/01/23(金) 07:41:44 ID:Azeyn9TC] Objective-C使ってます
178 名前:167 [2009/01/23(金) 13:07:07 ID:AEZO7GNu] toolbar を縦(vertical)に配置することには成功したのですが、 menubar を縦(vertical)に配置する方法が見つかりません。 // 例えば、menubar に対しては gtk_toolbar_set_orientation と同様の関数が存在しません。 どうすればできるでしょうか?
179 名前:login:Penguin [2009/01/24(土) 17:41:53 ID:j3OrWlaN] linuxデスクトップユーザーの特徴 @インストールしただけで選民思想 Aやっていることはwindowsと同じ。しかもめんどくさくなっただけ。 Bコマンド打ち込んでプロだと勘違い C黙ってwindowsでも使ってろと間口を狭める D素人がだのなんだのとwindowユーザーを馬鹿にする Eカーネルいじればいいだろと無茶を要求 Flinux開発者とのずれを認識できていない Gwineを使うくせにlinuxを再現しようとする動きがあるとたたく 冫─' ~  ̄´^-、 / 丶 / ノ、 / /ヽ丿彡彡彡彡彡ヽヽ | 丿 ミ | 彡 ____ ____ ミ/ ゝ_//| |⌒| |ヽゞ |tゝ \__/_ \__/ | | __________ ヽノ /\_/\ |ノ / ゝ /ヽ───‐ヽ / / linuxはめんどくさくて難しい分だけ、 /|ヽ ヽ──' / < 自称プロが悦に浸るためのツールとして最高なんじゃないだろうかwww / | \  ̄ / \ / ヽ ‐-  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
180 名前:167 [2009/02/01(日) 07:28:50 ID:lE4ur93H] お前等、なにも知らないんですね。
181 名前:login:Penguin [2009/02/02(月) 10:47:56 ID:IIH5qxfd] もともと閲覧者が少ないスレで 自分の欲しいタイミングで回答を得ようとしてるのが間違い 半年位待ってみろ
182 名前:login:Penguin [2009/02/02(月) 11:13:18 ID:6BkR0lwx] >>181 では、LinuxでGUIを作るにはどのライブラリを使うのでしょう?
183 名前:login:Penguin mailto:sage [2009/02/02(月) 11:41:10 ID:J5ctVuxx] * 女でLinux使ってる奴 -- pc11.2ch.net/test/read.cgi/linux/1224332593/355 355: login:Penguin [] 2009/01/19(月) 12:20:24 ID:Zkvelgln 私は女に一番受けのいいlinuxディストリビューションを知っている。 * Gnome vs KDE -- pc11.2ch.net/test/read.cgi/linux/1185851003/136 136: login:Penguin [] 2009/02/01(日) 11:19:51 ID:lE4ur93H 今 C の gtk+ 使ってアプリ書いてるけど、 血反吐でそうなぐらい面倒くさい。。。 だれかもっと使いやすいライブラリ作ってくれ。。。 * 女でLinux使ってる奴 -- pc11.2ch.net/test/read.cgi/linux/1224332593/417 417: login:Penguin [sage] 2009/02/01(日) 12:29:52 ID:lE4ur93H >>416 発音は「テック」。 英語ができない日本人はなぜか「テフ」と言っている。 偽の発音を使い続けるのはそろそろ止めにしないか? 本当は「イケマン」と言うべきなのに、「イケメン」 と言う日本人。もうね、アホかと。 * 女でLinux使ってる奴 -- pc11.2ch.net/test/read.cgi/linux/1224332593/415 415: login:Penguin [sage] 2009/02/01(日) 11:05:18 ID:lE4ur93H >>413 ○ tex = テック × tex = テフ
184 名前:167 mailto:sage [2009/02/02(月) 13:03:00 ID:9NCOwk9m] >>183 変な事言ってるように仕向けたいんだろうけど、 lE4ur93Hは正当な事言ってんじゃん。
185 名前:login:Penguin mailto:sage [2009/02/02(月) 20:46:11 ID:2frQG7fR] ただの荒らしコピペに反応すんなよ NG登録されて回答もらえなくても知らんぜ
186 名前:login:Penguin [2009/02/10(火) 20:32:40 ID:8DV6Um/n] ファイル選択ダイアログを、ターミナルから閉じたくて、 下の処理を入れたのですが、ダイアログを閉じた後、応答が無くなります。 (GUIでキャンセルボタンや×をクリックすると正常に閉じれる) どうすれば、ターミナルから正しく閉じれるかを教えてください。 GtkWidget *filew = NULL; void FileSelection::destroyFileSelection() { status = false; gtk_widget_destroy(filew); }
187 名前:login:Penguin mailto:sage [2009/03/29(日) 11:33:55 ID:JOkFFCq+] Windowsでは、自分以外のプロセスが管理しているウィンドウのハンドル(動作中のOS上で ユニークな識別番号)を得ることができれば、そのウィンドウのサイズやデスクトップ上での 位置などを好きにいじくったりできるのですが、LinuxのGTK+(またはGNOMEもしくはX Window System)にそのようなAPIのようなものはありますか?
188 名前:187 [2009/03/29(日) 11:38:55 ID:JOkFFCq+] すみません、ageさせてください。 なにがやりたいかと言うと、特定の文字列をウィンドウタイトルに含むトップレベルの ウィンドウに対して、デスクトップ上での表示位置やサイズを変更したりといったことです。
189 名前:187 mailto:sage [2009/03/29(日) 20:36:19 ID:JOkFFCq+] 自己レス libwnckてのが関係ありそうだが、Rubyから使えるんだろうか。Pythonにはそのための モジュールが既にあるみたいなんだけど。今Ubuntu起動できないからよくわからん。
190 名前:login:Penguin mailto:sage [2009/03/29(日) 21:12:45 ID:Afl3tAxS] >>187 wmctrl コマンドのソースでもみればいいんじゃね?
191 名前:187 mailto:sage [2009/03/30(月) 10:56:06 ID:+ewzli1b] レスありがとうございます。こんなコマンドがあったんですね。自分の目的にはこれを 利用するだけで十分そうですが、ソース読むのも勉強になって面白そうですね。 結果的にスレ違いになってしまってすみません。
192 名前:login:Penguin [2009/04/23(木) 11:32:24 ID:rK6Swnpx] だれか clispからgtkを使う方法を教えてください
193 名前:login:Penguin [2009/07/10(金) 07:43:15 ID:jUacI/UD] VMwareがGtk産だったとは
194 名前:login:Penguin [2009/07/17(金) 23:36:58 ID:hHQTz6KG] 本気で聞く おまえらはどうやってGTK+勉強なさいましたか?
195 名前:login:Penguin mailto:sage [2009/07/18(土) 13:41:00 ID:MyXAq5ze] >>194 GTK+ソース付属のexamples+demosを動かして遊ぶ ↓ GTK+ソース付属のtutorialを一通りこなす web: library.gnome.org/devel/gtk-tutorial/stable/ ↓ doc/reference読み方を覚える ↓ 小さいアプリをsourceforgeとかfreshmeetで見つけてきて参考にする ↓ irc.freenode.netの#gtk+とかメーリングリストで質問
196 名前:login:Penguin mailto:sage [2009/07/18(土) 15:41:41 ID:0IAjxnq5] 難しそうですね 断念しました ありがとうございませんでした
197 名前:login:Penguin [2009/07/18(土) 18:31:08 ID:NxC2oWbI] 何をどう見たら難しそうなんだよ? ゆとりか? 英語にびびるな! サンプルソースなんてコピればコンパイルできる WindowsでもLinuxでもCode::Blocks使えばそれほど コンパイルできる開発環境の準備には手間取らない
198 名前:login:Penguin mailto:sage [2009/07/18(土) 19:30:03 ID:+ryPUP7D] ママが一から十まで教えてくれなきゃイヤなんじゃね
199 名前:login:Penguin [2009/07/18(土) 20:00:15 ID:ghQ1gSty] pygtkがいちばんやさしくてにょろにょろ
200 名前:login:Penguin mailto:sage [2009/07/18(土) 20:39:03 ID:0IAjxnq5] >>197 そうですね サンプルソースをコピーして勉強したことにしようと思います >>198 そうですね パパじゃいやです >>199 そうですね 数十年ぶりにしゃぶりたいです >>195 俺、本気になります!真面目に勉強します! ありがとうございました!!
201 名前:login:Penguin mailto:sage [2009/07/19(日) 01:03:57 ID:vKaqQMs4] 携帯とか組みこみでGTK+を使っているものって何かある? 海外では結構あるみたいだけど、日本だと聞かないよな。
202 名前:login:Penguin mailto:sage [2009/07/24(金) 16:52:07 ID:99ViSCNs] >>201 書いてないだろ常考
203 名前:login:Penguin mailto:sage [2009/07/24(金) 17:15:55 ID:aH4gErtS] >>202 は日本語に不自由な方?
204 名前:login:Penguin mailto:sage [2009/07/24(金) 17:48:23 ID:99ViSCNs] うん
205 名前:login:Penguin mailto:sage [2009/07/24(金) 23:12:42 ID:6YmCBCzn] GTKはもう少しで消滅する googleの新しいソリューションに置換される
206 名前:login:Penguin mailto:sage [2009/07/25(土) 04:36:37 ID:00SH8Kn9] Chrome OS の事か? 確かにウィンドウシステムは時前のものを用意するらしいけど、 どうなんだろうね。そもそもソースが公開されるかどうかも怪しい。 それに、GTK+の培ってきた年月を一気に越えられるとも思えないし。
207 名前:login:Penguin mailto:sage [2009/07/25(土) 05:18:20 ID:corW1o/2] グーグルは基本Qtじゃないの。 でも今更ブラウザの下の層なんか関係ないはず。 HTML5 でアクティブデスクトップっていう懐かしいお話をもう一度やるんでしょ
208 名前:login:Penguin mailto:sage [2009/07/25(土) 06:22:09 ID:00SH8Kn9] まぁ、googleはWEBアプリが基本だから、そうなるのかね。 ただ、この事前の大袈裟なプロパガンダはMSに似てるなw
209 名前:login:Penguin mailto:sage [2009/07/25(土) 09:19:09 ID:wdRQEHVW] GTKスレはあるのにQTスレがないのはなんでだろう〜
210 名前:login:Penguin mailto:sage [2009/07/25(土) 10:58:46 ID:QoKls/xb] >>209 ム板にあるからじゃないか?
211 名前:login:Penguin [2009/07/25(土) 11:39:56 ID:IOPwPp1+] >>209 pc12.2ch.net/test/read.cgi/tech/1239996587/ どっちかと言うとQtの方が活発
212 名前:login:Penguin mailto:sage [2009/08/23(日) 00:41:14 ID:cXbPjTOU] 初歩的な質問です。 Xを使わずにフレームバッファを使うGTK+アプリをリンクする際は、どのgtkライブラリをリンクすればいいのでしょうか? Xを使う場合だと以下のようなリンクオプションになると思いますが、フレームバッファを使用する場合のリンクオプションを教えてください。 $ pkg-config gtk+-2.0 --libs -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgdk_pixbuf-2.0 -lm -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0
213 名前:login:Penguin mailto:sage [2009/08/23(日) 01:17:03 ID:oYmg5B0H] Xを使わずにフレームバッファを使うGTK+とやらはインストールしてあんの?
214 名前:212 mailto:sage [2009/08/23(日) 02:02:51 ID:cXbPjTOU] debian上からaptitudeでlibgtk2.0とlibgtk2.0-dev関連のライブラリをインストールしてあります。
215 名前:login:Penguin mailto:sage [2009/08/23(日) 06:49:16 ID:Do4KpMOi] Xを使わないと動かんよ。 Gtk+はXLibの面倒臭さを軽減するためのライブラリに過ぎんのだから。 Windowsに移植する場合にもXLib相当のが要る
216 名前:login:Penguin mailto:sage [2009/08/23(日) 09:20:44 ID:WBxszhFm] >>214 それはX用のパッケージ。 フレームバッファ用のGTKはlibgtk-directfb-2.0-*だぞ。 >>215 知ったか乙
217 名前:212 mailto:sage [2009/08/23(日) 10:44:26 ID:cXbPjTOU] >>216 そうなんですか! 以前ググったら下記サイトのフレーズが目に留まり、てっきりDirectFBじゃなくてもフレームバッファでも利用可能なのだと思ってました。 orz ttp://armadillo.atmark-techno.com/articles/sd-a500-embedded-course-ch3 >GTK+ >GNOME アプリケーションでユーザインターフェースを構築するのに利用される基礎的なライブラリで,XWindow System 上で動作します(www.gtk.org/ ).フレー>ムバッファやDirectFB 上などでも動作するように設定することができます. ご教示いただいたライブラリをインストールして確認してみます。
218 名前:login:Penguin mailto:sage [2009/08/29(土) 19:05:24 ID:7RbftsXX] libgrade+gtkmmをいじって遊んでいるのだけど メインウィンドウからダイアログのようなウィンドウを開く サンプルは何処かに有りませんでしょうか
219 名前:login:Penguin mailto:sage [2009/08/29(土) 21:56:36 ID:OBRUPUZc] >>218 gtkmm-demo を起動してみては? 結構いろんなサンプルがあるな > gtk-demo pygtk-demo gtkmm-demo
220 名前:login:Penguin mailto:sage [2009/08/30(日) 01:00:57 ID:XE+apBqt] >>219 libgladeを使っていない様です。
221 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 08:33:18 ID:Czh9S0PJ] >>220 libgladeは使われなくなる方向だから、、、って思ったけど、 gtkmmだとBuilderを使ったサンプルが無いな。。。 おそらく、以下はチェックされていると思うけど、 gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/chapter-libglademm.html 複数のwidget idを使っているサンプルは無いですね。。。 Gnome::Glade::Xml::create()して、get_widget()して、 signal処理してrun()する流れは同じだと思うけど、 丁度良いサンプルは見つからないな。。。
222 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 08:51:11 ID:IHJ1WvuS] >>221 有難うございます。小汚い書き方で何とか表示だけはするようになりました(いろいろ問題が有るけど) 綺麗に書いてあるサンプルなど見ればもう少しましになるかと思ってたのです。 libgladeは使われなくなる方向なんですね。anjutaでデフォルトではく雛型がlibgladeだったので調べてました 今は何を使う方向なんでしょうか?
223 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 10:37:24 ID:Czh9S0PJ] >>222 > libgladeは使われなくなる方向なんですね。anjutaでデフォルトではく雛型がlibgladeだったので調べてました > 今は何を使う方向なんでしょうか? Glade 3.6.7のglade-3を起動したら、プロジェクトのオプションってダイアログが開く。 そこには、プロジェクトのファイル形式でGtkBuilderとLibgladeを選択できる。 今後は、GtkBuilderがデフォルトになって、ファイル接尾子が.uiになる。 サンプルはgtk-demoのBuilderのソースを見るとわかると思う。 そして、gtkmmのサンプルが無いな〜って話。 live.gnome.org/TwoPointTwentyseven/Platform のUpcoming Deprecationsで非推奨になっているものは、消えゆく運命。
224 名前:名無しさん@そうだ選挙に行こう mailto:sage [2009/08/30(日) 11:08:36 ID:IHJ1WvuS] >>223 Debianのlennyを使っているのでAnjuta 2.4.2、Glade 3.4.5です・・・ GtkBuilderのサンプル探しの旅に出たいと思います。有り難うございます
225 名前:login:Penguin mailto:sage [2009/08/31(月) 02:59:20 ID:WV5KE7UC] glade も GtkBUilder もほとんど同じだから、リファレンスを見ながらで 書けると思うけど。
226 名前:login:Penguin mailto:sage [2009/08/31(月) 14:47:43 ID:4XJ92u20] GtkBUilderを使ったGtk::Drawingariaのサンプルを作ろうとしたんだけど 途端に分からず・・・ イベントとかどうやってつなげたらいいのだろう イベント処理で書かないと無理だよね?
227 名前:login:Penguin mailto:sage [2009/09/01(火) 01:49:35 ID:o0MV2wSR] とりあえずこんな感じか。 (ちなみに C++ は main に限って return は不要。これ豆知識な) int main(int argc, char** argv) { Gtk::Main kit(argc, argv); AppWindow::Initialize(argc, argv); Glib::RefPtr<Gtk::Builder> builder = Gtk::Builder::create_from_file(AppWindow::GLADE_FILE_NAME); AppWindow* app_window = 0; builder->get_widget_derived(AppWindow::WINDOW_NAME, app_window); kit.run(*app_window); }
228 名前:login:Penguin mailto:sage [2009/09/01(火) 01:51:56 ID:o0MV2wSR] class AppWindow : public Gtk::Window { public: static const char* GLADE_FILE_NAME; static const char* WINDOW_NAME; static void Initialize(int argc, char** argv); AppWindow(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder>& builder); virtual ~AppWindow(); protected: void on_quit_action_activated(); private: const Glib::RefPtr<Gtk::Builder>& m_builder; Glib::RefPtr<Gtk::Action> m_act_quit; };
229 名前:login:Penguin mailto:sage [2009/09/01(火) 01:58:01 ID:o0MV2wSR] const char* AppWindow::GLADE_FILE_NAME = "app_window.glade"; const char* AppWindow::WINDOW_NAME = "window1"; void AppWindow::Initialize(int argc, char** argv) { // 初期化なんかをここで // OpenGL の描画を独立して(別ウィンドウで)出来るようにしてみる Glib::signal_idle().connect(sigc::bind(sigc::ptr_fun(PollEvent), DrawGL)); } AppWindow::AppWindow(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder>& builder) : Gtk::Window(cobject), m_builder(builder) { m_act_quit = Glib::RefPtr<Gtk::Action>::cast_static(m_builder->get_object("action1")); m_act_quit->signal_activate().connect(mem_fun(*this, &AppWindow::on_quit_action_activated)); move(0, 0); resize(240, 720); } AppWindow::~AppWindow() { } void AppWindow::on_quit_action_activated() { Gtk::Main::quit(); }
230 名前:login:Penguin mailto:sage [2009/09/01(火) 02:02:59 ID:o0MV2wSR] ただの Gtk::Window で悪いけど Gtk::Drawingaria でも大差ないはず。 app_window.glade は GtkBuilder 形式の xml ね。 大体こんな感じが典型的な処理だと思うよ。
231 名前:login:Penguin mailto:sage [2009/09/01(火) 20:43:11 ID:LcijR9gh] >>226 > イベントとかどうやってつなげたらいいのだろう > イベント処理で書かないと無理だよね? drawareaをeventboxの上に乗せないとダメじゃなかったっけ? # と、テストもせずにカキコ
232 名前:login:Penguin mailto:sage [2009/09/01(火) 20:45:43 ID:azH81sw2] 有難う、私が書いていたのと大分違うみたい 少しずつ見てみるよ
233 名前:login:Penguin mailto:sage [2009/09/02(水) 01:45:20 ID:XY5vbVWT] ちなみに AppWindow みたいに Gtk::Widget を継承している場合は、単に class AppWindow : public Gtk::Window { public: virtual void on_show() { cout << "表示された" << endl; } }; みたく仮想関数をオーバーライドするだけでいいんだけどね。 ただ、これもトップレベルのウィンドウのイベントしか反応できないから、 >>229 のコンストラクタみたく cast_static なんかでボタンとか取得して、 自分のメソッドを connect していくのが C++ っぽい書き方な気がする。
234 名前:login:Penguin mailto:sage [2009/09/02(水) 13:02:19 ID:Wp36mia7] >>227 コンパイルしてみたけどエラーで落ちてしまったよ m_act_quit = Glib::RefPtr<Gtk::Action>::cast_static(m_builder->get_object("action1")); これってどんな意味かな?
235 名前:login:Penguin mailto:sage [2009/09/02(水) 18:54:23 ID:Wp36mia7] 結局こんな感じに書いてつながったけど、何かモヤモヤするよ 複雑になってくると小汚くなりそうだなー builder_xml->get_widget( "drawingarea1", daria1 ); daria1->signal_button_press_event().connect( sigc::mem_fun( *this, &MyDialog::on_daria_press ) ); daria1->add_events( Gdk::BUTTON_PRESS_MASK ); daria1->signal_expose_event().connect( sigc::mem_fun( *this, &MyDialog::on_daria_expose_event ) ); daria1->add_events( Gdk::POINTER_MOTION_MASK ); daria1->signal_motion_notify_event().connect( sigc::mem_fun( *this, &MyDialog::on_daria_motion_notify_event ) ); daria1->signal_realize().connect( sigc::mem_fun( *this, &MyDialog::on_daria_realize ) );
236 名前:login:Penguin mailto:sage [2009/09/02(水) 19:25:12 ID:Wp36mia7] class MyDialog { Glib::RefPtr<Gtk::Builder> builder_xml; Gtk::DrawingArea* daria1; public: MyDialog(); virtual ~MyDialog(){} bool on_daria_press(GdkEventButton* event); bool on_daria_expose_event( GdkEventExpose* event ); bool on_daria_motion_notify_event( GdkEventMotion* event ); void on_daria_realize(); };
237 名前:login:Penguin mailto:sage [2009/09/03(木) 02:34:12 ID:6mgKfH1n] >>234 > m_act_quit = Glib::RefPtr<Gtk::Action>::cast_static(m_builder->get_object("action1")); > これってどんな意味かな? これは GtkAction を取得するんだけど get_object は Glib::RefPtr<Glib::Object> を返す からキャストが必要になるけど、ドキュメントには cast_static を使うようにって書いて あるからこうしてる。 当然 app_window.glade に "action1" という名前の GtkAction がないと駄目だよ。 それで落ちてるんじゃない?
238 名前:login:Penguin mailto:sage [2009/09/03(木) 02:38:43 ID:6mgKfH1n] >>235 別にそんな小汚くはないと思うけど。大体そんなもんだよ。
239 名前:login:Penguin mailto:sage [2009/09/03(木) 02:47:30 ID:6mgKfH1n] >>236 MyDialog は Gtk::DrawingArea を継承してもいいかも。 それと on_* は protected の方がいいよ。
240 名前:login:Penguin mailto:sage [2009/09/03(木) 12:32:06 ID:jVnTHMiE] >>234 適当なGtk::WindowのGUIを作って読み込ませたんだけど それがうまく行ってなかったのかもしれない 色々有難う GtkBuilderを使わない方も少しいじってみるよ
241 名前:login:Penguin mailto:sage [2009/09/06(日) 14:05:15 ID:aXigLrxm] Gtk::SpinButtonを浮動小数点表示にする事は出きますでようか?
242 名前:login:Penguin mailto:sage [2009/09/14(月) 13:21:24 ID:kBmevVmP] cairommでバックバッファを使った描画はどうすれば良いのでしょうか? save(),restore()は少し違うような気がして・・・
243 名前:login:Penguin mailto:sage [2009/09/15(火) 17:55:42 ID:1BtVuQj7] GTK+onDirectFBをインストールしようと思ってDirectFBのサイトに行こうとしたら なぜか繋がらないんだけど誰か教えr・・・教えてください。
244 名前:login:Penguin [2009/09/15(火) 17:56:26 ID:1BtVuQj7] sageちまった
245 名前:login:Penguin [2009/09/15(火) 17:59:06 ID:1BtVuQj7] ttp://www.directfb.org/ URLも貼っておきます。 繋がらない、マジで誰か教えてください
246 名前:login:Penguin mailto:sage [2009/09/21(月) 16:41:13 ID:X29eYjZv] GtkGLextmm を使っている人はいますか? 実装具合とか、こっちのライブラリの方が良いよとかありましたら教えて頂きたいのです。 超初心者なのでMesaとかとの違いも分かりませんがGtk繋がりと言うことで宜しくお願いします。
247 名前:login:Penguin mailto:sage [2009/09/24(木) 10:56:15 ID:hMFgf6/j] 独自処理のバッテリー残量表示のために Ruby/Gtk2でGtk::StatusIconを使ってみたんですが、 tooltipは付けられても、どうもlabelを付けることができなさそうです。 通知領域にテキストないしはアイコン+テキストを表示したいのですが、 どんなクラスを使えばいいんでしょうか? リファレンスを見た限りではちょっと見当が付きませんでした。 Gdk::Pixbufにテキストを動的に描画するのかな。
248 名前:login:Penguin mailto:sage [2009/09/24(木) 11:11:57 ID:hMFgf6/j] www.daa.com.au/pipermail/pygtk/2009-June/017120.html ruby-gnome2.sourceforge.jp/hiki.cgi?Gdk%3A%3APixbuf どうもそのようですね。でも、もっと簡単にできないもんか……。
249 名前:login:Penguin mailto:sage [2009/09/25(金) 18:17:32 ID:WaiZYKyV] >>243-245 DirectFBのソースをDLしようとオフィシャルサイトを開こうとしたけど、まだサーバが落ちたままだね・・・ 9/14頃から落ちてるっぽいからメンテナンスにしては長過ぎだよね。 もしかしてDirectFB終了フラグON?
250 名前:login:Penguin mailto:sage [2009/09/27(日) 00:08:06 ID:ng4uKqzS] >>249 今はつながってる。digしたら212.227.87.76だった。
251 名前:login:Penguin [2009/09/28(月) 02:12:56 ID:5e1BLaTK] GTK+2.18記念あげ ウィンドウの管理すらGDKで行なうようになり、ちらつきを減少させたり ウィンドウの変形やアニメーションを行なえるようになったり、別の (Clutterのような)描画ライブラリの中に簡単に埋め込めるように なったりしたようだ。 他にも、各プラットフォーム毎に実装していたウィンドウを管理するコード を共通にする事ができるようだ。 WindowsやMacOSXでの動作が改善されたらいいなと。
252 名前:login:Penguin mailto:sage [2009/10/04(日) 14:16:19 ID:P8VQfdNh] gtkmmで複数のウィンドウを開くプログラムは作れますか? イメージ的にはGIMPの様なコントロールが有って描画画面が有る感じ gtk+を使えば出来るのかな?
253 名前:252 mailto:sage [2009/10/05(月) 12:16:45 ID:yVAGOb64] やり方が分かったの報告(するまでもないのかな・・・) Gtk::Windowを継承したクラスをインシタンス化して hogehoge.show() で表示されました。(バカみたいな話でお恥ずかしい)
254 名前:login:Penguin mailto:sage [2009/10/07(水) 17:30:55 ID:PMxweG2O] インシタンス><
255 名前:login:Penguin [2009/10/11(日) 18:03:35 ID:Sidlsc4E] Failure to compile 64 bit gtk on mac os buffalothedestroyer.blogspot.com/2009/07/blog-post.html >Attempted to install gtk+-2.17.2 on my mac. Had to install: www.nabble.com/Gtk-issues-td23803508.html mac 環境だと gtk は使えないんだろうか…?
256 名前:login:Penguin mailto:sage [2009/10/12(月) 14:47:14 ID:sqmRrC1g] ググってみたけど使えるっぽいよ
257 名前:login:Penguin mailto:sage [2009/10/13(火) 21:28:52 ID:l2EymYVQ] >>255 Leopard だけど、MacPortsからインスコできたよ。 Ruby/GtkとPyGtk用にと。
258 名前:login:Penguin mailto:sage [2009/10/14(水) 03:07:04 ID:VVFhTsV6] www.amazon.co.jp/ 入門GTK-菅谷保之/dp/4274067769 webの情報をまとめた程度らしいけど gtkmmも扱って欲しかったかな
259 名前:login:Penguin mailto:sage [2009/10/14(水) 03:31:23 ID:cB0J9abS] Gtk+2 で初の和書じゃないの。出るだけで価値がある
260 名前:login:Penguin mailto:sage [2009/10/14(水) 03:43:48 ID:Evvplg3O] まぁお布施のつもりで買っておくか
261 名前:login:Penguin mailto:sage [2009/10/14(水) 12:08:22 ID:oK0tjYE+] Gtk::SpinButtonの値が変更された時に発生するイベントを一時的に停止することは出来ますか? 複数のGtk::SpinButtonが変更されるのが分かっている場合に一時的に停止して 手動でアップデートしたいのです。
262 名前:login:Penguin mailto:sage [2009/10/14(水) 22:05:50 ID:8MVmnU1X] >>258 gtk2hsも扱って欲かったwww 買うけどなwwww
263 名前:login:Penguin mailto:sage [2009/10/14(水) 23:22:20 ID:QhaIdhW6] QtよりGTK+がイイみたいだぬ、GTK+に決めるぬ
264 名前:login:Penguin mailto:sage [2009/10/15(木) 00:17:55 ID:K/xBs5bI] Qtもいいぬ。触ってみてぬ(´・ω・`)
265 名前:login:Penguin mailto:sage [2009/10/15(木) 03:29:50 ID:eDklkq43] >>258 そもそも洋書でもgtkmmはないだろ。そんな中で日本語の本なんて奇跡が 起こらない限り無理だろ。
266 名前:login:Penguin mailto:sage [2009/10/15(木) 13:37:26 ID:pxmDyP/M] >>258 独創的なな表紙だな
267 名前:login:Penguin [2009/10/15(木) 23:20:38 ID:eyJUfiVx] 【恐怖の】呆れるほど危険な民主党の正体【民主党】 http://www.yo●utube.c●om/watch?v=●MUv12Ae7ojE 小沢一郎 〜 闇の系譜 :秘書逮捕の真相/北朝鮮との黒い関係 高画質 http://www.yo●utube.com/w●atch?v=gdKVt●_vKCHc 2/3【イリハム・マハムティ】東トルキスタンの歴史と中共の弾圧[H21/7/8] http://www.you●tube.com/watch?v=6eUN●hjdBLXg 漫画で学ぶチベット問題 http://www.ni●covideo.jp/w●atch/sm275●2213 日米規制改革および競争政策イニシアティブに基づく日本国政府への米国政府要望書 japan.u ●sembassy.●gov/j/p/tpj-j2●0041020●-50.html#mineika-s ●の部分は外してブラウザのURLに入れること
268 名前:login:Penguin mailto:sage [2009/10/16(金) 23:10:15 ID:qPhMCs8o] >>258 「入門GTK+」 今日、買ってきたよ。 最近は、Web上のホームページのプログラミング解説の方が分かり 易いとうことが多くなってきているようだけど、 「入門GTK+」を サックっと、50ページくらい読んでみたところ この本は、意外に読みやすいし、わかり易い。 他のプログラミングの習得に挫折した人でも何とかいけそうな感じかな。
269 名前:login:Penguin mailto:sage [2009/10/16(金) 23:12:12 ID:q3/VuRbk] QtだとQt CreatorとゆうIDEが使いやすいけど、 GTK+使う時はどんなIDE使うと便利ですか。
270 名前:login:Penguin mailto:sage [2009/10/16(金) 23:26:21 ID:qPhMCs8o] >>269 「入門GTK+」では、Anjuta(アニュータ)が紹介され解説されているね。
271 名前:login:Penguin mailto:sage [2009/10/16(金) 23:34:15 ID:qPhMCs8o] そうそう、時間があったので qt4の解説書も立ち読みしてきたんだけど、今日買った「入門GTK+」 の方がわかり易かった。 誰か、「猿でもわかるqt4」って本、書いてくれないかな〜
272 名前:login:Penguin mailto:sage [2009/10/16(金) 23:37:35 ID:q3/VuRbk] GTK+は使ったときないけど、QtもQt Creatorもすごく使いやすいぬ(´・ω・`) GTK+簡単なら使ってみようかしら。
273 名前:login:Penguin mailto:sage [2009/10/17(土) 14:15:16 ID:XYXybyM0] >>268 読みやすいのか、ボーナス出たら買おうかな。 >>272 C++使えるならQtだけでいいんでない? おれはCしか知らないからGTK…
274 名前:login:Penguin mailto:sage [2009/10/17(土) 15:22:41 ID:nWRW4zS0] そいつム板のwxスレを荒らしてるキチガイだから放置推奨
275 名前:login:Penguin mailto:sage [2009/10/18(日) 03:51:09 ID:+Fs337jm] Gtk+の場合はGladeってのがある。もちろん簡単。
276 名前:login:Penguin mailto:sage [2009/10/18(日) 09:53:27 ID:juku8Oo/] gladeはもうobsoleteだけどね。今はGtkBuilderを使う
277 名前:login:Penguin mailto:sage [2009/10/18(日) 09:59:19 ID:oZOJkxHq] glade自体はまだまだ現役だよ。 ただlibgladeはもうobsoloteだけどね。
278 名前:login:Penguin mailto:sage [2009/10/18(日) 21:34:36 ID:mlVaod2q] >>271 ok 究極の友愛本と帯に書いておくよ
279 名前:login:Penguin mailto:sage [2009/10/21(水) 08:09:56 ID:2ccCLXEP] あと半年たらずでGTK+3が出るこの時期に出さんでもという気もするが。
280 名前:login:Penguin mailto:sage [2009/10/21(水) 12:58:05 ID:tvBs0TF8] >>279 HPに公開していたGTK+の第2版までのドキュメントを著書にしたいという願いと、 出版社側での「最近GTK+の本が出ていないので出したい」と言う思わくが一致して GTK+-2の解説であっても出したんでないの。
281 名前:login:Penguin mailto:sage [2009/10/21(水) 21:25:41 ID:6UoL2jU0] GTK+3ってそんなに変わるの?
282 名前:login:Penguin mailto:sage [2009/10/21(水) 22:08:56 ID:dJLlBo7l] >>281 うん
283 名前:login:Penguin mailto:sage [2009/10/22(木) 05:25:32 ID:sG60T9Up] 3Dデスクトップをデフォルトにする方向性はやめてほしい。 Vista も KDE4 も総スカンだろ? CPUのクロックが頭打ちなんだから、プログラマは節制しないと。
284 名前:login:Penguin mailto:sage [2009/10/22(木) 06:02:24 ID:IEkHgIHU] CPUのクロックが頭打ちだからこその3D描画だろ GPUにやらせたほうが描画は速い ※適切な3Dドライバがある場合に限る
285 名前:login:Penguin mailto:sage [2009/10/22(木) 07:05:43 ID:+CGcKXd7] オイラは、普段非力なマシンばかり扱っているから3Dをすると重くてかなわん! GTK+3が出ても当分は、GTK+2を使うよ。 「入門GTK+」を参考にすれば、jpgやgifのイメージビュ-ワが簡単に作れるし 動作も軽いからね。
286 名前:login:Penguin mailto:sage [2009/10/22(木) 09:00:06 ID:hz6htkDb] 描画は速いかもしれないがメモリ食うんだ
287 名前:login:Penguin mailto:sage [2009/10/22(木) 18:11:31 ID:oTwQaR0U] GTK+3は使用メモリ量が減って重くなるの?
288 名前:285 mailto:sage [2009/10/22(木) 19:41:05 ID:2c91WZnW] 因みに我が家での、 「入門GTK+」を参考に作ったイメージビュ-ワで 画像 1024x768_16bit_color.jpg(65536色)表示時のメモリ使用量は、 イメージビュ-ワ本体だけの立ち上げ時: 1.25MB 画像1024x768_16bit_color.jpg表示時: 1.25+2.62=3.87MB だった。
289 名前:login:Penguin mailto:sage [2009/10/22(木) 22:10:41 ID:1jy7wL1R] Windows だと何十メガとメモリ食うよね。 まあしょうがないんだろうけど。
290 名前:login:Penguin mailto:sage [2009/10/22(木) 22:42:41 ID:GKZrjVVp] GTK+3はスルーしてGTK+4まで待つお(´・ω・`)
291 名前:login:Penguin mailto:sage [2009/10/23(金) 02:29:05 ID:icsRYQ9+] Gtk+3は現状で限りなく3に近づいているから、そんなに変わらない。
292 名前:KyPAWlrSIokuKhBa mailto:i1o2h9k.@gmail.com [2009/10/23(金) 22:50:30 ID:gHGN7SxH] The psychology literature certainly has a lot to say about the topic, but economists have a rather simplistic view of the issue. ,
293 名前:login:Penguin mailto:sage [2009/10/24(土) 00:38:30 ID:9RfZkvGi] >実のところ,私はKDE-1.0を見て(日本語は通らなかったものの)デスクトップ分野での UNIXの未来を確信し, >GNOME-1.0を見て目の前が真っ暗になった人なのですが(笑) >当時はQtが改変不可だったために,GTK/GNOMEを選択せざるを得なかった. とあるサイトの人のことばなんですが、詳しいことがさっぱりなので、どういう文脈なのかわかりません 誰か解説していただけたら幸いです。もしこれが荒れるような内容でしたらスルーを…
294 名前:login:Penguin mailto:sage [2009/10/24(土) 01:27:11 ID:BKx301Ml] 趣旨は脚注でない本文のほうにあると思うが、 GObjectも定着して成長したし、いまは中の人の評価も少しは違うかも。 まぁGtk+はダサい技術だと思う。でもダサいほうが品質高かったりするわけだが
295 名前:login:Penguin mailto:sage [2009/10/24(土) 01:54:57 ID:Qc2ltt6a] クラス構造体の中に変数詰めてるとか(VTableとしても使えたなら…)、 G_SIGNAL_ACTIONフラグはただの目印にしかしてない所や、 せっかくGObjectというランタイムタイプシステムこさえてるのに 一部C言語バインディングからしか使えない機能とかあるっぽいところとかGTK+はだせぇなあと思う。 でもGObjectは面白かった。QtのmocやSiGnal/SLOTはいまいちそそられない。
296 名前:login:Penguin mailto:sage [2009/10/24(土) 04:12:11 ID:wG3ZsfW/] 今はValaが熱いよ。GObjectが好きな人なら尚更ハマること請け合い。 >>293 まぁ見ての通りだと思うけど、KDE1.0は衝撃的だったな。KDEが出るまでは Linux(BSD)は一部のマニアのおもちゃでしかなかったのが一般にも普及しそう な期待があった。 結局サーバー分野はある程度普及したけど、デスクトップ分野は今も昔も 変わってないけどね。 で、Gnome1.0あんまり記憶がないんだけど見た目はMotifに似ていてダサくて 動作が不安定だった記憶がある。
297 名前:login:Penguin mailto:sage [2009/10/24(土) 12:25:04 ID:9hbzJrW8] シグナルとかが補完されるエディタってないかな?
298 名前:login:Penguin mailto:sage [2009/10/24(土) 13:28:04 ID:KFtS7ScQ] >>297 gedit + gtksourcecompletion で、、、 gtksourcecomple.sourceforge.net/ valaでしか試してないけど、一応動く。
299 名前:login:Penguin mailto:sage [2009/10/24(土) 19:23:04 ID:wyOmgHI3] Gnome 1というとSolarisのイメージがあるなあ 大学の標準装備だった。俺は速攻twmにしたが。
300 名前:login:Penguin [2009/10/29(木) 23:20:42 ID:6yKiv2hH] これからGTK+を学ぼうと思っています。 主にLinuxで開発するつもりで、AnjutaというIDEを使ってみようと思いますが、 Windowsマシンでたまにコーディングしたいときにはどうしたらいいんでしょ? Windows版ってありますか? Linux板で聞くのは変ですが…。
301 名前:login:Penguin mailto:sage [2009/10/30(金) 21:38:43 ID:7aJTkb9U] >>300 ム板にもスレがあることに気づいて そこの過去情報を読んだら解決しました。 お邪魔しました。
302 名前:login:Penguin [2009/11/01(日) 17:23:59 ID:qpVzDXQL] GUIツールキットを比較しつつ、どれがいいか検討しています。 今の第一候補はGTK+ですが、実際に使っている人の声を聞きたいです。 他の候補はQt、wxWidgetsで、言語はC++の予定です。 GTK+ ・GnomeやXfceで使われているので、ユーザが多そう ・ライセンスはLGPL ・多くの言語向けのバインディングがあるが、CではなくC++だと少し注意が必要(?) ・各OSのネイティブなルック&フィールではないが、テーマによっては近い外観で描画できる Qt ・KDEで使われている ・Nokiaがやっていて安心感がある ・LGPL、GPL、商用版のQPLは制限が非常に緩い ・おしゃれな外観(?) wxWidgets ・GUIの他に多くの機能のラッパが存在して便利 ・ネイティブなルック&フィール ・IDE、RADツールが豊富 ・日本語の扱いにやや難あり(?) Ultimate++というのも気になりますが、マイナーだし、日本語が使えない問題もあるようです。 これらは自分で集めた情報なので間違ってるかもしれません。 他にメリットやデメリットがあればどうぞ教えてください。 よろしくお願いします!
303 名前:login:Penguin mailto:sage [2009/11/01(日) 21:17:41 ID:lntj8SS+] C++ならQt
304 名前:login:Penguin mailto:sage [2009/11/01(日) 22:13:27 ID:qpVzDXQL] >>303 やっぱりGTK+はC++に向いてないということですね。 情報ありがとうございました。 他にも情報があれば皆さんよろしくお願いします。
305 名前:login:Penguin mailto:sage [2009/11/01(日) 22:14:04 ID:TdugBe1j] つGLUT
306 名前:login:Penguin mailto:sage [2009/11/01(日) 23:32:48 ID:o2Fus8Wv] >>304 gtkmmいいよ。
307 名前:login:Penguin mailto:sage [2009/11/02(月) 00:05:28 ID:F2TUeYlu] >>305 GLUTを調べて見ましたが、OpenGLのやつなんですね。 3Dにはあまり興味が無いですが、今後必要になったとき使ってみます。 情報ありがとうございました。 >>306 GTK+はC++との親和性が少し低いけど、gtkmmはC++用で問題ないということですね。 試してみます。 ありがとうございました!
308 名前:login:Penguin mailto:sage [2009/11/03(火) 01:21:46 ID:Vebc7itB] rubyでgtkプログラムをしたいんですけど、何かいい開発環境はないですか? gladeとかでみためは作って変換できるのですが、中で実行するシグナル(っていうんですかね)がどういう感じで使えるかというのがわからないので 調べ調べになってしまいます。通常使ってるのはemacsとnetbeansです。これに似た、もしくはその上で動かせるものはありませんか? 補完とかできたらうれしいのですが。
309 名前:login:Penguin mailto:sage [2009/11/03(火) 19:55:27 ID:0PVkcWZ9] 逆に「gladeとかでみためは作って変換できる」の部分を 詳しく教えてほしい。
310 名前:login:Penguin mailto:sage [2009/11/03(火) 20:05:58 ID:DNzdCjrE] gtk-builder-convertのことかな?
311 名前:login:Penguin mailto:sage [2009/11/03(火) 22:30:31 ID:1H0HUjWH] ruby-glade-create-template とかあったよな.
312 名前:login:Penguin mailto:sage [2009/11/04(水) 08:03:24 ID:03fE0NL7] クラスライブラリのリファレンス(英語)なら公式サイトでrbbrっていうサンプルアプリとして 置いてあるけど、そういうことじゃないのかな?
313 名前:308 mailto:sage [2009/11/05(木) 02:27:28 ID:Cf0Et12U] >>309-311 311さんが言ってるみたいにruby-glade-create-templateで作ったgladeファイルを.rbに変換して オブジェクトは作ったからメソッド書いて自分の思うような動きを作ってちょうだいな。みたいなところまではできます。 しかし、rbファイルを編集するときにrequire 'gtk2'をよんでいるのにemacsでもnetbeansでも補完してくれませんでした。 >>312 rbbrは使ってるOSにパッケージがあったのでそれを入れてみましたが。リファレンスを引けるようになりました! リファレンスが引けると言うことは補完もできるのでは?と今悩んでいる状態です。
314 名前:309 mailto:sage [2009/11/06(金) 12:34:31 ID:pFNFtZEf] >>310 >>311 >>313 サンクスです。ググったら Ruby/Gtk2のチュートリアルに書いてあるね 規制でタイミング逸して返事書かなくてすまん
315 名前:308 mailto:sage [2009/11/06(金) 17:32:52 ID:1VLamOE6] >>309 さんはどんな感じでコードかいてますか? リファレンス見ながらかいている感じですか?
316 名前:login:Penguin mailto:sage [2009/11/07(土) 07:20:09 ID:PbDi/n2M] >>302 亀レスながら俺も検討中なので... GTK+はこれからやってみるので置いといて、 Qtはさすがに良くできてるけど、簡単なことをやろうとしても多くのクラスを 使わなければならず、また抽象的な概念みたいなもの(データモデルとか データアイテム)とか出てきて、簡単に「サクッ」と作る感じではないので、 習得に時間が掛かりそう。「エキスパートのための高級品」のイメージ。 ウィジットの種類も豊富だし、一つのウィジットが多くの機能を持っているので 困ることはなさそう。 wxWidgwtsは確かにツールが豊富だけど、決定版と言えるものはイマイチ ない気がする。wxDev-C++が導入簡単だけどデバッガーが環境や条件に よって動作しないトラブル発生中。もう随分前に発覚したのになかなか 直らない。Delphiで書かれていて、近くC++に移植が予定されているようだ。 使えるのはCode::Blocksかな? wxWidgwtsはQtよりは理解しやすいと思う。日本語の扱いは別に問題ないよ。 ウィジットの種類は豊富だけど、肝心なものがなかったり... 俺はスピンボタンつきの数値専用エディットボックスで、実数を 扱いたかったんだが、これが標準ではない。3rd Party製があるけど、 IDE/RADで、非標準のウィジットを簡単に取り込める仕組みを 持ったものがないので、結局手で書くしかなくて面倒。 Ultimate++は使い勝手が良くない。というかユーザーインターフェースの 設計が下手で、直感的に使えない。それと日本語の扱いに問題がある。 Windowsの話だけど、エンコーディングにCP932(SJIS)が選べないので、 utf-8にするしかない。それでもC++版Hello World!を「こんにちは 世界!」 にして実行したら文字化けしたので、カッとしてアンインストールして しまった。 以上、ご参考まで。
317 名前:login:Penguin mailto:sage [2009/11/07(土) 07:40:28 ID:h9ilEYN9] Lazarus とか。
318 名前:login:Penguin mailto:sage [2009/11/07(土) 07:53:25 ID:wJdSUuBx] gtkmmを薦めてるのがいるが真に受けんように C++でまともに動いたら、scim-bridgeみたいなモノを作る羽目にはならん
319 名前:login:Penguin [2009/11/07(土) 11:52:06 ID:CPjNRklA] 面白いのはわかるが、今更そんなんやったって・・・ 激しくつまらんけど、これからはAIRですよ
320 名前:login:Penguin mailto:sage [2009/11/07(土) 13:30:53 ID:pZqg2eyF] いや、これからはJavaですよ 作ってて面白いしね
321 名前:309 mailto:sage [2009/11/07(土) 15:04:13 ID:pqmmO2Ng] >>315 そうだね。 オンラインリファレンスを地味に検索しながら emacsのruby-modeで書いてるよ。 methodsとかのメソッドで確認したりするぐらい。 emacsで構文解析してメンバ関数だのメソッドを補完する環境って無いんじゃないかな。 無作為に辞書から補完するのはあるかもしれんけど。 netbeansはよく知らない。 Ubuntuだと「追加と削除」からリRuby Browserというリファレンスビュワーが落とせるよね。 これはRuby/Gtk2のクラスも見られたと思う。
322 名前:login:Penguin mailto:sage [2009/11/07(土) 19:56:24 ID:nXIVDau4] 型がなんでgintやgcharなの? intやcharではダメなわけ? C言語とのこういうちょっとした違いは 他にもいろいろあるの?
323 名前:login:Penguin mailto:sage [2009/11/07(土) 20:43:43 ID:P9pTNgo8] > 型がなんでgintやgcharなの? 移植しやすくする為の措置じゃなかったっけか
324 名前:login:Penguin mailto:sage [2009/11/07(土) 21:04:17 ID:nXIVDau4] 「g」が付いてるほうが移植性が高いのかねぇ。 みんなはそういうのをどうやって覚えたの? 解説本とかあまり売ってないみたいだけど…。
325 名前:login:Penguin mailto:sage [2009/11/07(土) 21:25:19 ID:NL8bJnRF] >>nXIVDau4 たとえばlongが64bitの環境でも、glong的に32bitであってほしい場合にlongの代わりにintやint32をtypedefするとかな。 データ構造の隠ぺいとかはWeb上の先人の残した情報だったり、技術書立ち読みだったり、Win32やNSPRとか同じことやってる実例を見たりとかで知ったよ。
326 名前:login:Penguin mailto:sage [2009/11/07(土) 22:58:20 ID:FPX1oLqZ] >>324 C言語はintとかの定義に幅があるから コンパイラが違えばintのサイズも異なったりするので 厳密に定義した独自のintを用意するわけですよ 先月出た本はどうでしょう www.amazon.co.jp/dp/4274067769
327 名前:login:Penguin mailto:sage [2009/11/07(土) 23:54:07 ID:Iq2jGS9i] gint32、とかにした方が判りやすいのに
328 名前:login:Penguin mailto:sage [2009/11/08(日) 03:02:52 ID:A1QtHV1W] >>325-326 なるほど、なんとなくわかった。 ありがと。チュ! 本は今度本屋で見てみる。
329 名前:login:Penguin [2009/11/08(日) 22:19:03 ID:A1QtHV1W] GTK+をこれからやろうと思ってますが、C++よりC言語のほうがいいんでしょうか? 昔CもC++も少しずつかじりましたが、どっちも中途半端に終わって、今は頭の中でゴッチャになってます。 GTK+を始めるこの機会にどちらかをちゃんと勉強するつもりですが、どっちがいいか迷ってます。 CよりC++のほうが言語として優れていたり、C++を覚えたほうが何か有利だったりするんですかねぇ? gtkmmというのを使えばC++でもいけるんですよね? 何かアドバイスをもらえればうれしいです。
330 名前:login:Penguin mailto:sage [2009/11/08(日) 22:48:08 ID:iZONJSh7] >>329 有利かどうかでいえば、一山いくらのプログラマとしても仕事に付けるかという観点ではC++/Java/PHP/VBあたりだろうな。 有利不利なんぞを気にするんなら間違ってもWindowsかWebアプリ、携帯以外見向きもしないほうがいい。GTK+なんかもってのほかだ。 マジレスするなら、C++にあまり慣れてないならCでGTK+やるのがいい。 ついでにPythonあたりも齧っとけばC+GTK+で面倒な部分もこなせるし、Linux方面のプログラムを開発するのに不自由はしないだろう。
331 名前:login:Penguin mailto:sage [2009/11/08(日) 23:24:58 ID:3wmSljPh] >>329 Cはスーパーマクロアセンブラ、C++になって高級言語の仲間入りっつー感じかな。 ある程度規模の大きなプログラム作るんなら、絶対C++の方が有利。 Cははっきり言って時代遅れ。C++は習得しておいた方がいいよ。 組み込み系なんかだと、また話は変わってくると思うが。 GUIツールキットだって、殆どのものがC++を念頭に置いて作られてる。 Cが標準でC++ラッパーを後付けしたのはGTK+くらいなもの。 まぁ、それだけ歴史が古く、練り上げられてるとも言えると思うけど。
332 名前:login:Penguin [2009/11/09(月) 00:10:55 ID:xrkj026G] >>330-331 どうも! 「C++に慣れてないなら」っていうのはオブジェクト指向が壁になるかもしれないってことですかねぇ。 一応JavaやPHPもちょこちょこやってるので、理解はしてます。 お二人の意見を合わせると、C++のほうがいいけど、慣れてなかったり自信がなかったりする場合は Cにしておくのが無難ってとこですね。 もうちょっと考えてみます。 とても参考になりましたー!
333 名前:login:Penguin mailto:sage [2009/11/09(月) 00:31:21 ID:GPAwpvGp] >>332 オブジェクト指向が壁になるからではないよ。ほぼ1からC++とGTK+(とgtkmmの固有事情)やるよりはCとGTK+のほうが楽かなとね。 一応gtkmm以外にもJavaとPHP向けのバインディングがあるから、Cでやるのが面倒なようならそれぞれJava-Gnome/PHP-GTKで調べてみるといい。
334 名前:login:Penguin mailto:sage [2009/11/09(月) 01:09:23 ID:GiNGaxO1] gtkmmの固有事情くわしく これから始めようと思ってるんだけど >>132 , >>318 とか見ると気になる
335 名前:329 [2009/11/09(月) 01:13:18 ID:xrkj026G] >>333 Cのほうがやっぱ楽なんですか。 といいつつC++も捨てがたいけど、>>334 さんと同じくgtkmmの固有事情が気になります。 JavaやPHPのやつも存在は知ってましたが、CかC++でアプリを作れるようになりたいなぁと思ってて…。
336 名前:login:Penguin mailto:sage [2009/11/09(月) 01:49:16 ID:9bGbNsmw] >>333 , >>334 >>132 , >>318 の言ってることについては心当たりないが、GtkTreeIterだかのバインディングにメモリリークのバグがあるとかいうブログの記事を見たことがある。 固有事情とは言いすぎた。GObjectの仕組みに加えてC++のオブジェクトとの絡みで素のGTK+より覚えることが多くなるかなと思った故の発言だ。 >>334 C/C++ともほぼ未経験なら日本語ドキュメントや和書もある素のGTK+のほうが理解しやすいのではと思ってC+GTKを勧めたが、単純にGTK+のウイジェットを使ってウィンドウアプリケーションを作るならgtkmmのほうが楽なはずだ。 素のGTK+をCで使用する場合、頻繁に型キャストのマクロを使うし、新たなウィジェットを作成する際にはGObjectの動的型システムを素で使うことになるからその点面倒だ。 gtkmmであればその点いくらか楽ができる。だが、ほかの言語バインディングでも使えるウィジェットを作成するとなると素のGTK+の動的型システムの流儀も触れる必要があるから、C++の知識に加えてGObjectの仕組みも知る必要がでてくる。 Javaをある程度使えて、GObjectの動的型システムには触れずにウィンドウアプリケーションを作りたいということであれば改めてgtkmmのほうを
337 名前:login:Penguin mailto:sage [2009/11/09(月) 09:55:18 ID:H/aMIY+I] わざわざPerlで扱ってる変態もいるしな
338 名前:login:Penguin mailto:sage [2009/11/09(月) 10:14:55 ID:LeSNQMah] >>335 俺は Python でやってる。 C を使っている gtk+ プロジェクトだったら C で書く。 そんなに違いはないし、簡単。 Cだとヘッダーにいちいちプロトタイプ宣言しなければならなかったり 毎回コンパイルしなければならないのが面倒だからPython使ってる。 楽チン。
339 名前:login:Penguin mailto:sage [2009/11/09(月) 15:19:07 ID:dkYv1Xb9] >>337 ぇー最近perlでGTK触りはじめたけど、変態じゃないやい><
340 名前:login:Penguin mailto:sage [2009/11/09(月) 15:40:43 ID:nWvFWYHF] とにかく完成するのが目的なら自分の好きな言語でいいじゃん。おれはRubyだぜ。
341 名前:login:Penguin mailto:sage [2009/11/09(月) 18:21:40 ID:EMO5BJHN] GTK+はバインディングが多いのがいいよね
342 名前:login:Penguin [2009/11/16(月) 16:13:58 ID:VCRzBqJE] なんだかんだ言って、Cのコードは寿命が長いんだよね。 コストベーシスで考えると、GTK+の場合は全てCで書いた方が いいと思う。他のメジャーなソフトはほとんどCだし、 インテグレーションもし易いよね。
343 名前:login:Penguin mailto:sage [2009/11/16(月) 17:18:31 ID:gFc8JNPu] Cは初心者向けの本を昔読んで、当時はなんだか難しいなぁって思ったけど、 GTK+に挑戦したくてもう一度読んでみたら大して難しくなかった。 配列、関数、ポインタ、構造体の使い方の基礎がわかってたらGTK+を扱える? この程度の知識で始めるのはなんか怖くて・・・。
344 名前:login:Penguin mailto:sage [2009/11/16(月) 17:21:51 ID:VCRzBqJE] GTK+なら、型が決まっているから、 ほんとに基本的な知識だけで十分だと思う。 マクロやプリプロセッサもよく使われているけど、 非常にシンプルなコンセプトだし、問題ないとおもう。
345 名前:login:Penguin mailto:sage [2009/11/16(月) 20:35:58 ID:gFc8JNPu] >>344 どうも! 今年中に始めよーっと!!
346 名前:login:Penguin mailto:sage [2009/11/16(月) 21:19:38 ID:tJXAF2DJ] もう「今年中」とかいうセリフが聞かれる時期になったか。
347 名前:犬山ぽち丸 mailto:sage [2009/11/19(木) 00:11:09 ID:CpUTPEU6] Perl でこんな感じのを書いてみました。 ttp://pochimaru.seesaa.net/article/132639898.html 次ページ移動ボタンをクリックする事で次ページを表示したいのですが、 このままでは期待するように動きません。 現時点の表示をクリアして次ページを表示するにはどうしたらいいのでしょうか?
348 名前:login:Penguin mailto:sage [2009/11/19(木) 05:10:52 ID:kHCd9OdN] # perlって聞いた時点で見る気なくした
349 名前:login:Penguin mailto:sage [2009/11/20(金) 14:06:49 ID:TNyOV+9k] DrawingAreaをAspectFrameで包むと上下左右に、 GNOMEでは1ピクセル、 Fluxboxでは2ピクセル隙間が開くんだが、なんとかならないものか
350 名前:349 mailto:sage [2009/11/20(金) 14:52:09 ID:TNyOV+9k] set_border_width(0)でもだめだった python-gtk2 2.16.0 python-glade2 2.16.0 gtk 2.18
351 名前:login:Penguin mailto:sage [2009/11/21(土) 12:33:26 ID:cf2l5sy0] gtk2.18.3をubuntu9.10でやっているんですが キーを押し続けている状態を知る事はできないんでしょうか? 今はkey-press-eventとkey-release-eventシグナルを使っているんですが キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて 押し続けている状態を知る事ができません。
352 名前:login:Penguin mailto:sage [2009/11/21(土) 15:35:08 ID:zEcsEEOn] key-pressのあとにkey-releaseがなければ押し続けていることになる
353 名前:login:Penguin mailto:sage [2009/11/22(日) 01:06:56 ID:EckaNW4z] >キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて 押しつづけているのにrelease-eventがくるとかキーボードぶっこわれてるんじゃね
354 名前:login:Penguin mailto:sage [2009/11/22(日) 08:57:13 ID:OlBHF5u9] >>351 Xのレベルではそれが通常の動作(モディファイアキー(の一部)以外では)。 Xはautorepeat時にKeyReleaseと続くKeyPressでタイムスタンプを同一にして 送ってくるので、GDKはそれを利用して>>352 のように見せるコードが 一応入ってはいる、が、環境や同時に利用するプログラムといった条件によっては それが働かないみたい。 自分の環境だけ考えるならGDKの該当部分に手を入れて常にその動作をするように してしまうのが簡単。そうでないならやはり同様に次のイベント (gdk_event_peekで得るのかな)とそのタイムスタンプを見て判断するんじゃないかと。
355 名前:login:Penguin mailto:sage [2009/11/22(日) 11:40:29 ID:xNfLAKy+] >>352 >>353 >>354 レスありがとうございます。 gdk_event_peekはnullが返ってきたのでダメでしたが gdk_event_getはタイムスタンプ同一のメッセージがしっかり返ってきました。 おかげさまで上手くいけそうです。
356 名前:login:Penguin mailto:sage [2009/11/22(日) 22:53:53 ID:LzN5AhP5] >>347 こんな感じでどうでしょう? 163a165,168 > my $currentObject = $scrolled_window->child; > if($currentObject) { > $currentObject->destroy; > } 204a210 > $drawable->show; 224a231 >
357 名前:犬山ぽち丸 mailto:sage [2009/11/26(木) 19:27:51 ID:bDLkSh53] >>356 動かしたいように動かす事が出来ました、ありがとうございます。 とても基本的なところで躓いてしまってたみたいで、お恥ずかしい限りです。
358 名前:login:Penguin mailto:sage [2009/11/27(金) 20:56:42 ID:w3OKtepz] GtkWidget ↑ ↑ GとWが大文字 これに気付くのに4日掛かった コンパイルが通って空のウィンドウが表示されたときは 雄叫び上げちゃったよ。
359 名前:login:Penguin mailto:sage [2009/11/27(金) 21:30:47 ID:RzRcFxle] www とりあえず、なんだ、おめでとう
360 名前:login:Penguin mailto:sage [2009/11/27(金) 21:51:12 ID:HBGtWPJy] Debianスレで GTK+ でウィンドウ出すのに四日かかったって言ってた人かw
361 名前:login:Penguin mailto:sage [2009/11/29(日) 00:46:08 ID:guffPLRY] おめでとう、マジで さぁ早くシグナルをコネクトしまくる作業に戻るんだ
362 名前:login:Penguin mailto:sage [2009/12/01(火) 22:14:30 ID:sy3qzyYB] >>361 ぬるぽっ!
363 名前:login:Penguin mailto:sage [2009/12/01(火) 22:23:34 ID:xoJE4V4A] >>362 ガッ って言ってほしいのね。 もぉ、寂しがり屋さんなんだからぁ。
364 名前:login:Penguin mailto:sage [2009/12/05(土) 20:49:17 ID:CO55p0ew] なんでこのスレ過疎ってんの? プログラマー不在のスレなの?
365 名前:login:Penguin mailto:sage [2009/12/05(土) 21:08:39 ID:Gmpm8vF/] >>364 そう思うならまず率先して何かを作って公開してみては如何でしょうか?
366 名前:login:Penguin mailto:sage [2009/12/06(日) 00:50:56 ID:fNpRY7Ok] 話題がないだけでしょ。
367 名前:login:Penguin mailto:sage [2009/12/07(月) 17:19:37 ID:CENTWTgC] 良くも悪くも枯れてるからな
368 名前:login:Penguin mailto:sage [2009/12/07(月) 20:01:28 ID:LkAo4E7O] gtk2hsで書いてみたけど思ったより使いやすかった
369 名前:login:Penguin mailto:sage [2009/12/13(日) 11:19:39 ID:naHBDIjP] gtkで外部装置から受信した温度データをグラフ描画するソフトつくってる。 左3/4が描画領域で残りに現在時刻や表示倍率の設定がある。 連続してデータ受信すると、時刻表示のタイマーがとまったり、倍率設定 のコンボボックスが操作できなくなるので、スレッド分けしようと思うのだけど expose_eventを別スレッドにすることって可能?
370 名前:login:Penguin mailto:sage [2009/12/13(日) 11:42:32 ID:P93DdDFa] できそうな気がするけど。 とりあえずやってみたら?
371 名前:login:Penguin [2009/12/16(水) 20:46:38 ID:laS/Dg3j] >>365 作る気になれるようなことが必要なのではないですか。
372 名前:login:Penguin mailto:sage [2009/12/16(水) 20:51:22 ID:dPFj9y5E] >>369 すごいですね 勉強のためにぜひソースを見せて頂けないでしょうか?
373 名前:login:Penguin mailto:sage [2009/12/16(水) 20:53:19 ID:dPFj9y5E] もしくは、ソースリストを公開しているwebページを ご存知でしたら教えてください。
374 名前:login:Penguin mailto:sage [2009/12/16(水) 20:54:06 ID:6soPE05o] ∧__∧ (´・ω・) いやどす ハ∨/^ヽ ノ::[三ノ :.、 i)、_;|*く; ノ |!: ::.".T~ ハ、___| """~""""""~"""~"""~"
375 名前:login:Penguin mailto:sage [2009/12/16(水) 21:47:42 ID:c63j0iz9] 受信を別スレッドでやるのが普通じゃないの
376 名前:login:Penguin mailto:sage [2009/12/16(水) 22:44:30 ID:Q8cS+VLW] ブロックする可能性のある処理は別スレッドにしないと止まる
377 名前:login:Penguin mailto:sage [2009/12/16(水) 23:39:53 ID:jaaomSx0] Exposeを別スレッドって、ぷっ。 さすがLinux。
378 名前:login:Penguin mailto:sage [2009/12/17(木) 02:29:15 ID:F8Jdsro2] 何がおかしいのかよくわからん。
379 名前:login:Penguin [2009/12/26(土) 01:54:27 ID:XiSC9KS7] GTK+の本を買おうと思うんですけど、この2冊だとどちらがいいですか? ・入門GTK+ ・Foundations of GTK+ Development プログラミングはCの基礎がわかっている程度です。 PHPもやってます。
380 名前:login:Penguin mailto:sage [2009/12/26(土) 13:18:25 ID:6MLS1ve1] 両方買えばいいじゃない。 あと、入門GTK+の方は作者がホームページで 本の内容を公開し始めてる
381 名前:login:Penguin mailto:sage [2009/12/26(土) 14:29:39 ID:YM2nDrzN] Foundations of GTK+ Development は一部 google books にでてる
382 名前:379 mailto:sage [2009/12/27(日) 00:54:04 ID:HfaPMpb7] >>380 両方買うと、結局一冊は読まないままになったりするタイプなので…。 あと、書籍代はケチるべきじゃないと思いますが、深刻な金欠状態なのです。 入門GTK+の作者サイトでの公開について、情報ありがとうございます。 休暇中に目を通してみようと思います。 >>381 Amazon USのレビューで「ネット上で読める」と書いてあったので、どこにあるのか気になってました。 書店になくて立ち読みできなかったので、Google Booksで読んで判断します。 どうもありがとうございました。
383 名前:login:Penguin mailto:sage [2009/12/27(日) 08:12:49 ID:Ri5kV8GM] GTK+は公式チュートリアルが結構充実している方だと思うので、 それ読めばとりあえずリファレンスとサンプル眺めつつ使えるようになる。 それでも本が欲しくなるならあるウィジェットの使い方を 詳しく書いていて欲しいだとかマルチスレッドとの兼ね合いが 知りたいだとか(あまりいい例が出てこなくてすまん) 求めるものがはっきりしてくると思うので、 それから本を選んでもいいんじゃないだろうか。
384 名前:379 mailto:sage [2009/12/27(日) 20:27:25 ID:HfaPMpb7] >>383 公式チュートリアルのことを知りませんでした…。 ダウンロードできたので、スマートフォン等にコピーして移動中でも読めそうです! プリントアウトして持ち歩くのもいいかもしれません。 最終更新日が2002年10月27日と古いんですけど、問題ないですよね? 書籍を買ったほうが最後まで読みつづけようという意欲が持てる気がしますが、 とりあえず公式チュートリアルを読もうと思います。 ちなみに「Foundations of GTK+ Development」はGoogle Booksで見てみたら とても良さそうでした。 「入門GTK+」のほうは著者ページで見つからなかったです・・。
385 名前:login:Penguin mailto:sage [2009/12/28(月) 02:58:56 ID:CtQUEG8Y] > 最終更新日が2002年10月27日と古いんですけど、問題ないですよね? ……? 公式チュートリアルは www.gtk.org/documentation.html でズバリ The Official Tutorial といってる library.gnome.org/devel/gtk-tutorial/stable/ だよ。 GTK+のソースコードのtarball中にも入ってる(docs/tutorial/以下)。
386 名前:login:Penguin mailto:sage [2009/12/28(月) 07:38:54 ID:RlHoBGgo] >>385 Tutorial Availabilityのページにあるリンク(ftp://ftp.gtk.org/pub/gtk/tutorial)から ダウンロードしました。
387 名前:login:Penguin mailto:sage [2009/12/28(月) 11:47:38 ID:T0tfWrHc] 自分でいいと思ったならそれ読め。もう知らん。
388 名前:login:Penguin mailto:sage [2009/12/28(月) 22:21:50 ID:Uh78zlUy] そう言うな。明日になればまたみんな仲良しななしさん
389 名前:login:Penguin mailto:sage [2009/12/28(月) 22:55:34 ID:AK9LsQvN] >>387 何?どうしたの?
390 名前:login:Penguin mailto:sage [2010/01/09(土) 18:48:59 ID:khh4I0eb] 今日からGTK+を始めてみた 今までwindowsのvisual stdioしか使ったことなかったから、パスさえ通ってりゃ #g++ hello.cpp だけでコンパイルをやってくれると思っていた 今日一日かかって`pkg-config --cflags --libs gtk+-2.0`を知って ウィンドウを出せた 疲れた
391 名前:login:Penguin mailto:sage [2010/01/10(日) 13:16:43 ID:3oa4ldyN] VisualStudioだってオプションからディレクトリの設定しなきゃ ビルドすらままならないだろうに、何言ってんだコイツ ましてやコマンドラインからCL.exe呼び出すんなら、vcvarsall.batなり vcvarsall.batで設定される環境変数群を、予めユーザー環境変数に定義して おかなければCL.exeもg++と同じエラー吐いて止まるだろうに・・・
392 名前:login:Penguin mailto:sage [2010/01/10(日) 14:58:37 ID:zlmG+3hJ] pixmapの背景色を黒くしたキャンバスを作って その上に画像と文字を描画してて、文字は白 これに対してニコ動のコメント表示/非表示みたいなことをやりたい 文字を描画するときのみXORモードで書いてるんだけど 背景の黒の上に書かれた物は消えるけど、画像の上に書かれた 物は黒抜き去れて残ってしまう 説明わかりにくいかも知れないけど、なんか良い方法無いかな
393 名前:login:Penguin mailto:sage [2010/01/13(水) 03:10:04 ID:hKXsU3qa] 文字を描画しないだけでいいんじゃないの?
394 名前:login:Penguin mailto:sage [2010/01/13(水) 13:45:44 ID:rT8A3kXe] >>390 チュートリアルとか見てないの?
395 名前:login:Penguin mailto:sage [2010/01/14(木) 01:41:29 ID:2htHqmwQ] 空気の福田はともかく、徳井が苦手でねぇ…
396 名前:login:Penguin mailto:sage [2010/01/15(金) 10:31:57 ID:2tKD4R7l] GTK+を使って記述されているソフトとしては gimp以外だとどんなものがありますか? ソースリストを読んで勉強したいのですが
397 名前:login:Penguin mailto:sage [2010/01/15(金) 11:34:43 ID:+6ILVUJ5] >>396 ja.wikipedia.org/wiki/GTK%2B#GTK.2B2.E3.82.92.E5.88.A9.E7.94.A8.E3.81.97.E3.81.9F.E3.82.BD.E3.83.95.E3.83.88.E3.82.A6.E3.82.A7.E3.82.A2 www.gtk.org/screenshots.html
398 名前:login:Penguin mailto:sage [2010/01/16(土) 13:06:47 ID:st13uJnk] 2chブラウザのJDとか、画像ヴューアのgqviewとか。
399 名前:login:Penguin mailto:sage [2010/01/23(土) 07:49:03 ID:c81zxfOz] ツールバーにウィンドを表示しないようにするにはどうすればいいの?
400 名前:login:Penguin [2010/01/26(火) 09:24:59 ID:WUy9SOAf] linux 初心者です。C言語はバリバリです(ウィンドウズで)最近、fedora12 に乗り換え、システムを移植中なんですが、 ウィンドウ関連のところで、GTK+なるものが必要とのこと。そこで、インストールしましたが、 実際のソースコードをコンパイルしてもエラーがでます。 勉強不足の所をご指摘いただけないでしょうか? gtk+ インストール yum -y install gtk+ でインストールしました。 800KBぐらいだったと思います。 そこで、次のコードを emacs でコンパイルします。 #include <gtk/gtk.h> int main( int argc, char *argv[] ) { GtkWidget *window; gtk_init( &argc, &argv[] ); window = gtk_winidow_new( GTK_WINDOW_TOPLEVEL ); gtk_widget_show( window ); gtk_main(); return 0; } すると、error : gtk/gtk.h: そのようなファイルやディレクトリはありません。 その他これに関連するエラーがでます。 gtk/gtk.h が無いのか、と思って、 もう一度 gtk+ をインストールしようとすると、 gtk+-1.2.10-69.fc12.i686 はインストール済みか最新バージョンです 何もしません とでます。 ...よろしくお願いします。
401 名前:login:Penguin mailto:sage [2010/01/26(火) 11:26:21 ID:TXiGdVqu] チュートリアルどおりやれば躓かないとおもうんだけどな gtk2, gtk2-develを入れて gcc test.c -o test `pkg-config --cflags --libs gtk+-2.0`
402 名前:login:Penguin [2010/01/26(火) 16:11:56 ID:R1nywYDP] >> 401 遅くなりましてすいません。返信ありがとうございます。 うまくいきました。 ウィンドウが表示されたとき、感動しました。 でも、emacs からはコンパイルできませんでしたので、リンカーあたりの 設定かな?と思っています。 何はともあれ、ありがとうございました。
403 名前:login:Penguin [2010/01/26(火) 16:57:00 ID:R1nywYDP] またまたお願いいたします。 linuxにおいて、 windowsの SetCursorPos() GetCursorPos() に相当するものはありますか? 参考リファレンスなど紹介してもらえれば助かります。
404 名前:login:Penguin mailto:sage [2010/01/26(火) 17:26:41 ID:Up0ueX3p] >>403 ttp://library.gnome.org/devel/gtk-tutorial/stable/
405 名前:login:Penguin [2010/01/26(火) 18:04:33 ID:R1nywYDP] >>404 返信ありがとうございます。 ...勉強します。
406 名前:login:Penguin mailto:sage [2010/01/26(火) 18:11:45 ID:OKgnAGh0] >>402 pkg-configコマンドが何なのか調べるんだ。
407 名前:login:Penguin [2010/01/28(木) 14:40:04 ID:YXchBGq5] はじめまして。GTK初心者です。 困っていることがあります。 gtk_init()でハングするんです。 1. gtk_init()を手動でコール出来るようプログラミングし、rc.localでそのプログラムを起動。 2. xwindow(gnome)ログイン後にgtk_init()をコールさせる。 上記の2の時点でgtk_init()でハングしているらしいです。 (gtk_init()下行のログが出力されない) 原因や対処法をご存知の方いらっしゃいませんか?
408 名前:login:Penguin mailto:sage [2010/01/28(木) 18:04:22 ID:VFHNmy96] >>407 突っ込みどころが3点ほど。 ・rc.localに登録して起動し、さらにログインした後にも起動・・・? ・gtk_init()だけ実行するプログラムを作ったの? だとしたら壮大な勘違いをしている。gtk_init()関数が何をする関数なのか調べるんだ。 ・「ログ」とは何のログ?ハングしているらしい、では分からないのでソースをUPするんだ。
409 名前:login:Penguin mailto:sage [2010/01/28(木) 18:34:10 ID:YXchBGq5] >>408 ありがとうございます。すみません、説明不足でした。 ちょっとソースは長いので文書のみで失礼します。 プログラムは、rc.localで起動した時点ではgtk_init()をコールしない作りにしてます。 その後、ログイン後にコンソールから別プログラムを通してプロセス間通信によりコマンドを送信、 そしてコマンドを受信した時点で gtk_init()をコールさせる形にしてました。 ログは、 printf("call gtk_init\n"); gtk_init(); printf("call end\n"); ★ のようにして、★が出力されない感じです。 その後の調査で、どうやら rc.local起動させた場合、環境変数 DISPLAYなどが 全く設定されていないようです。 そこら辺に問題有りかと思っているのですが、なにぶん、勉強不足でして。 時間も無いので質問させて貰った次第です。
410 名前:login:Penguin mailto:sage [2010/01/28(木) 18:40:22 ID:A3FmJC2O] DISPLAYも何も、Xの起動はrc.localより後なんだぜ? プログラム分けるんじゃ駄目なんかい
411 名前:login:Penguin mailto:sage [2010/01/28(木) 18:44:27 ID:0EFvnz24] 時間も無いので 時間も無いので 時間も無いので 時間も無いので 時間も無いので
412 名前:login:Penguin mailto:sage [2010/01/28(木) 19:24:50 ID:bFXQct0B] >>409 「GTK初心者」と言うよりLinux&プログラミング初心者のようですね。 貴方にGTKはまだ早いです。環境変数やXの基本が理解できていないと 説明されても分からないと思いますので出直してきて下さい。
413 名前:login:Penguin mailto:sage [2010/01/28(木) 19:30:37 ID:uG/wS28i] お金も無いよ お金も無いよ お金も無いよ
414 名前:login:Penguin mailto:sage [2010/01/28(木) 19:32:04 ID:YXchBGq5] >>410 ありがとうございます。 inittabで初期化レベルを分けていることもあり、 てっきりrc.local前に起動処理が走っているかと勘違いしていました。 お恥ずかしい。 >>412 おっしゃるとおりです。 出直してきます。
415 名前:login:Penguin mailto:sage [2010/01/28(木) 21:55:00 ID:WU2RMXov] >>414 DISPLAYが設定されてなくて、Widget使わないなら、 GObject関係を使うためだけなら、g_type_init ()すれば良いよ。 有名なエラーが出るからgtk_init()使ったってエスパーしてみた。
416 名前:login:Penguin [2010/02/07(日) 16:35:02 ID:jjKybwb6] 書籍「入門GTK+」のP31のプログラムを打ち込み、何度も確認したのですが、どうしても下記のエラーが出てしまいます。 何が間違っているのか、ご教示願います。 gtk-sample.c: In function ‘create_menu’: gtk-sample.c:64: error: ‘acitons’ undeclared (first use in this function) gtk-sample.c:64: error: (Each undeclared identifier is reported only once gtk-sample.c:64: error: for each function it appears in.) gtk_action_group_add_actionsの値でエラーが出るようです。関係する記述を確認しましたが問題ありません…
417 名前:login:Penguin mailto:sage [2010/02/07(日) 17:08:07 ID:KhA+E7Mu] エラーメッセージを読んでみましょう acitonsが宣言されていませんよ actionsと間違えていませんか?
418 名前:login:Penguin [2010/02/07(日) 17:18:05 ID:jjKybwb6] >417さん ごめんなさい、本当に気づきませんでした。エラー文を読んでいたのに…ありがとうございました
419 名前:login:Penguin mailto:sage [2010/02/09(火) 01:35:25 ID:gRID6Pu9] ググれ秀才
420 名前:login:Penguin mailto:sage [2010/02/10(水) 20:29:31 ID:y7MwWf/g] gtkmmをこれからやってみようと思ってるけど、 入門GTK+を読みながらC言語で練習するより 最初からgtkmmでC++使ったほうがいい? gtkmmの入門書がないみたいなので、 取っかかりとして入門GTK+を候補にしてるんだけど…。
421 名前:login:Penguin mailto:sage [2010/02/11(木) 13:48:24 ID:AIMyey0J] >>420 最終的にC++で書くのが目的なら、↓みたいなところがあるからC++で書けばいいんじゃない。 gtkまわりの日本語の情報が少ないから、言語は違うけどたまに参考にさせてもらってるよ。 book.geocities.jp/gtkmm_ja/docs/tutorial/html/index.html
422 名前:login:Penguin mailto:sage [2010/02/12(金) 15:44:26 ID:DJstgHYM] >>421 そのサイト見てみます。 ありがとう。
423 名前:login:Penguin [2010/02/17(水) 19:33:47 ID:Ozbv3EUx] GTK+ 1.2 で作った古いツールを 2.0 で動くように手直ししてるんですが、とりあえず Makefile の中で # GTK+ 1.2 CFLAGS = `gtk-config --cflags` LIBS = `gtk-config --libs` # GTK+ 2.0 CFLAGS = `pkg-config --cflags gtk+-2.0` -DGTK_ENABLE_BROKEN -DGTK_WINDOW_DIALOG=GTK_WINDOW_TOPLEVEL LIBS = `pkg-config --libs gtk+-2.0` てな感じでお茶を濁して動かしているんですが、ソースを全面的に 2.0 対応するコストって どれほどでしょうか? 150本ほどのちまちましたツールがあって、2.0 で起こしたツールが2割程度、後の8割は、 前記のとりあえずリビルドです。
424 名前:login:Penguin mailto:sage [2010/02/17(水) 19:42:41 ID:TkV44uU+] 1.2のランタイムぐらい入っててもいんでない?
425 名前:login:Penguin mailto:sage [2010/02/21(日) 14:06:19 ID:pTXZtDIq] ちょっと自前で描画しようとすると、gdkとcairoが混在していて 煩雑としてるなぁ。 少なくともGDKの描画関連のAPIはもういらないだろう。 3.0辺りでばっさり消すとかしてもいいんじゃないか。
426 名前:login:Penguin mailto:sage [2010/03/11(木) 00:46:30 ID:Vm2wsjJM] GTK(+glade)を使ったあるプログラムを ・HP-UXサーバ ・RedHat Linuxサーバ でそれぞれコンパイルおよび動作させ、 別のLinux端末に表示させたところ、 表示や動作自体は問題無いんだけども、 エディットボックスへの入力で RedHat Linuxの方は日本語入力を受け付けてくれません。 ちなみに、それぞれに入っているGTKはともに1.2です。 SCIMとかの環境は、一見同じっぽいですが・・・・ どこか見るべき箇所はあるでしょうか? ちなみに、glade自体も HP-UXは日本語入力を受け付けてLinuxサーバの方は 日本語入力を受け付けてくれません。 gladeの問題なんですかねぇ・・・?
427 名前:login:Penguin [2010/03/12(金) 16:52:20 ID:sdgtdQtC] Gtk::Dialogの派生クラスを作成してある条件の時表示させています。 表示後一定期間経過したら自動的にそのダイアログを閉じたいのですが、 どうすればいいのでしょうか。 特にダイアログにこだわっているわけではありません。 何かメッセージを表示 -> 一定時間後に自動的に消去 が実現できればいいです。 よろしくお願いします。
428 名前:login:Penguin mailto:sage [2010/03/12(金) 19:39:46 ID:37m6gC+E] >>427 g_timeout_add関数ではだめでしょうか?
429 名前:login:Penguin mailto:sage [2010/03/12(金) 19:41:48 ID:WSSuZVVD] >>428 そこはらめぇーーーー
430 名前:login:Penguin mailto:sage [2010/03/16(火) 23:40:15 ID:u16nCOLZ] gtk_widget_drawを呼ぶとたまにアプリが落ちる 調べたらgtk2では非推奨になってた かわりにgdk_window_invalidate_rect使えって書いてあったから それ使うようにしたら、exposeイベントハンドラに入ったり入らなかったりするようになった
431 名前:login:Penguin mailto:sage [2010/03/19(金) 03:10:05 ID:pTXFbkuH] Xawで作られたソフトのWidgetをGnomeテーマのスキンっぽく 変える方法ってありますか?Xaw3dみたいな
432 名前:login:Penguin mailto:sage [2010/03/22(月) 18:34:33 ID:gITq0f63] >>427 作ってみた。たぶん、427はここを見てないだろうけど #include <gtk/gtk.h> gboolean timeout(gpointer data){ gtk_dialog_response( GTK_DIALOG(data), GTK_RESPONSE_ACCEPT ); return FALSE; }; int main (int argc, char **argv){ guint tag; GtkWidget *dialog; gtk_init (&argc, &argv); dialog = gtk_dialog_new_with_buttons ("My dialog", NULL, GTK_DIALOG_MODAL | GTK_DIALOG_DESTROY_WITH_PARENT, GTK_STOCK_OK, GTK_RESPONSE_ACCEPT, NULL); g_signal_connect_swapped (dialog, "response", G_CALLBACK (gtk_widget_destroy), dialog); tag = g_timeout_add_seconds( 2, timeout, dialog ); gtk_widget_show_all (dialog); gtk_dialog_run(GTK_DIALOG(dialog)); g_source_remove(tag); return 0; }
433 名前:login:Penguin [2010/05/01(土) 02:23:02 ID:ZoBub0ZC] あるデータファイルをどんどん読んで処理しながら、1秒に1回その途中経過を Windowに表示する、みたいなプログラムを書こうとしています。 Windowに表示する部分は、gtk_main()を呼ぶ前に、g_timeout_add(1000, draw, NULL) のようにしてタイムアウト関数を使えばいいとして、データファイルを読み込んで 処理する部分は、どこに書けばいいのでしょうか? スレッドとかを使わずにやりたいのですが。
434 名前:login:Penguin mailto:sage [2010/05/01(土) 18:51:28 ID:lTmE6Ym2] g_io_add_watchとか?
435 名前:login:Penguin [2010/05/01(土) 21:52:51 ID:5eA3cNHe] LinuxでGTK+やってる人はWindowsでも主にGTK+で書いてる? WindowsのAPIは使いませんって人いるのかな。
436 名前:login:Penguin mailto:sage [2010/05/02(日) 00:32:37 ID:Bdebw0Wa] そもそもWindows使いません。
437 名前:login:Penguin [2010/05/02(日) 06:00:37 ID:J+HCMgwe] >>433 スレッドを使わない方がめんどくさいと思うんだけどね。 ずーっと処理し続けて一秒に一回描画するって事だと その処理の間は入力受け付け無くてもOK? その為のスレッドなんだけどなぁ。 シングルCPUでもそう言うことが出来るのがスレッドの良いところ。 それでもスレッドを使いたくないというなら、こまめにシグナル飛ばしっこ するしかないと思う。
438 名前:login:Penguin mailto:sage [2010/05/02(日) 21:48:38 ID:uNQYZGNa] 簡単なシミュレーション用のGUIラッパ作りたんですが、 Qt4とgtkmmどっちが作るの楽ですか? どっちもバグてんこ盛りそうで、javaやM$畑に生まれたかった
439 名前:login:Penguin mailto:sage [2010/05/02(日) 22:14:42 ID:WSA7U0rv] >>438 マジでバグテンコ盛りだからいまからでも上にJava+Swingあたりでやらせてくれって掛け合ったほうがいい。 ちゃんと上にQtもGTK+もバグテンコ盛り過ぎてプロダクションレベルに使えないって直訴するんだぞ。
440 名前:login:Penguin mailto:sage [2010/05/04(火) 08:25:25 ID:i62yYai1] >>438 vala とかどうか。バグが多いかどうかはプラットフォームに よる部分も多いと感じるが…win ならC#で組むのが楽だとは思う。
441 名前:login:Penguin [2010/05/04(火) 09:52:32 ID:gZYcN+Ue] >> 439 使いこなせていないだけじゃないの。
442 名前:login:Penguin mailto:sage [2010/05/04(火) 21:20:07 ID:C0XJN+7X] なんでこのスレ、ム板じゃないの? SDLとかはちゃんとム板でやってるのに なんでGTKはのけ者なの? いじめに合うの?
443 名前:login:Penguin [2010/05/04(火) 21:28:25 ID:9ORU/lJS] Gtkプログラミング on Windows!!! ってスレがム板にあるけど? pc12.2ch.net/test/read.cgi/tech/1147024203/
444 名前:login:Penguin mailto:sage [2010/05/04(火) 21:36:12 ID:C0XJN+7X] 窓専用じゃん。
445 名前:login:Penguin [2010/05/04(火) 21:47:13 ID:9ORU/lJS] 自分で立てればいいぢやん
446 名前:login:Penguin mailto:sage [2010/05/05(水) 17:49:24 ID:NLGDqQjm] まぁええやんここにも有っても どうせ両方見てるし