GTK+プログラミング
1 :login:Penguin :2007/09/05(水) 13:58:46 ID:2SORZMjm.net GUIツールキットであるGTK+とその周辺技術についてのスレッド -前スレ- http://pc11.2ch.net/test/read.cgi/linux/995808691/ -関連サイト- 本家 http://www.gtk.org/ APIレファレンス http://library.gnome.org/devel/gtk/stable/ gtkmm(C++ラッパー) http://www.gtkmm.org/ glade http://glade.gnome.org/ libglade http://www.jamesh.id.au/software/libglade/
2 :login:Penguin :2007/09/05(水) 14:09:00 ID:b1/CEVO9.net Ruby-GNOME2 Win32 GUI Installer http://ruby-gnome2.sourceforge.jp/?News_20070212_1
3 :login:Penguin :2007/09/05(水) 14:16:20 ID:2SORZMjm.net -参考になるサイト- http://larse-gtk.hp.infoseek.co.jp/gtk.html http://kota.steeludon.com/gtk/ http://www.hakodate-ct.ac.jp/~tokai/tokai/gtkmm/ http://gtklab.sourceforge.jp/gtkwin/
4 :login:Penguin :2007/09/05(水) 14:28:30 ID:bwt0DIPX.net >>1 おつ。前のスレは落ちたんだよね。 関連スレ Gtkプログラミング on Windows!!! http://pc11.2ch.net/test/read.cgi/tech/1147024203/
5 :login:Penguin :2007/09/05(水) 22:56:25 ID:cjdtil+H.net 何か見ないなって思ってたら落ちてたのか。 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 :2007/09/05(水) 23:18:58 ID:6zMwszt6.net >>5 使えるな〜と思ったら、gladeの開発版を使っているのですね。 情報Tnx GNOME-2.20でanjutaが入らないみたいなので残念です。
7 :login:Penguin :2007/09/06(木) 00:50:05 ID:O0ecg2ks.net まあまだ使いにくい所もあるしね。個人的にはもうちょっとScintillaベースの エディタのフォント設定をもうちょっと楽にしてもらいたかったり。 後GtkBuilderに早い所対応してくれないかな。まあこれはGlade待ちなんだけど。
8 :login:Penguin :2007/09/06(木) 19:24:35 ID:cMxVF+yM.net 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 :2007/09/06(木) 19:44:27 ID:EzCswhTZ.net コンパイルオプションに `gtk+-2.4 pkg-config --cflags --libs` 付け加える
10 :login:Penguin :2007/09/06(木) 22:14:16 ID:jVEAROlh.net >>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.net GTKのオブジェクトにMozillaを組み込むにはどうすればいいんでしょうか?
12 :login:Penguin :2007/09/15(土) 22:43:40 ID:NKI8HvUy.net 昔のGTK1.2で作られている日本語がばけて表示されるソフトを 日本語対応させるのって難しいですか?
13 :login:Penguin :2007/09/16(日) 00:10:58 ID:gopQQAh6.net >>11 gtkmozembed ってFAQレベルの気が・・・
14 :login:Penguin :2007/09/16(日) 17:16:00 ID:szZ43l1O.net GTKのアイコンってどのファイルに含まれてるのでしょうか? 画像がない時にでる赤い×印のmissingアイコンになるのですが ファイルがわかれば他のバージョンの高いディストリから 持ってこようと思ってます
15 :login:Penguin :2007/09/16(日) 18:03:08 ID:nKbLcQMO.net >>14 そうゆうプログラムを作るという話?
16 :login:Penguin :2007/09/16(日) 18:14:10 ID:xPVEAZTR.net Qtの方がおもしろいよ!!
17 :login:Penguin :2007/09/16(日) 20:19:22 ID:Faddvszk.net >>14 本当に基本的なアイコンはGTKの中に組み込まれてるけど、 大体その前に/usr/share/icons(pixmaps?)以下にあるアイコンテーマが読み出される。 アイコンテーマについては以下を参照 ttp://tango.freedesktop.org
18 :login:Penguin :2007/09/17(月) 03:57:01 ID:W3kOm0S+.net 2.12りりーす
19 :login:Penguin :2007/09/17(月) 20:46:29 ID:Rov63cpp.net >>17 icon-theme入れたら表示されました どうもです
20 :11 :2007/09/18(火) 09:46:06 ID:7RZGKs31.net >>13 ありがとうございます。 gcc でmozembedをLINKするときのoptionってどなたかご存じないでしょうか?
21 :login:Penguin :2007/09/18(火) 20:28:53 ID:u0v3LdR2.net >>20 $ pkg-config --libs firefox-gtkmozembed.pc でいいんじゃない?
22 :20 :2007/09/19(水) 08:33:16 ID:Sg4DTI1c.net >>21 実行して mozillaのobject を gtk_container_add( ) するとエラーを吐いてまだ動作しませんがビルドできるようになりました。 ありがとうございました。
23 :login:Penguin :2007/09/19(水) 11:09:35 ID:n7MsIjqh.net topやnetstatなどの基本的なCUIコマンドをGtkを使ってGUI化したものってないかな? TreeViewで簡単にsortを掛けることができるような... なければ自分で造ろうとしているのだけど、既存のものあれば参考にしたい。 TreeViewの各要素にlabelを埋め込んで、このlabelをCUIコマンドで得られる データーにあわせて変更するような、力づくなコーディングをしてみたんだけど もっとエレガントな方法はないものか...
24 :login:Penguin :2007/09/19(水) 23:19:21 ID:HUCusNQ/.net qtで充分じゃない?
25 :login:Penguin :2007/09/19(水) 23:47:15 ID:NIZBsTRK.net >>23 topみたいなのだったらgnome-system-monitorとか?
26 :login:Penguin :2007/09/20(木) 01:24:41 ID:7HBhJoi6.net >>25 ありがとう。ソースみてみるわ。普段gnomeじゃないんで盲点でした。 >>24 志村、スレタイスレタイw Qtスレってあるんかね?
27 :login:Penguin :2007/09/20(木) 04:29:38 ID:jv4IvgQU.net >>26 ム板にある http://pc11.2ch.net/test/read.cgi/tech/1130300775/
28 :login:Penguin :2007/09/22(土) 22:29:28 ID:mUDAWFkC.net http://pc11.2ch.net/test/read.cgi/linux/1145835844/
29 :login:Penguin :2008/03/20(木) 13:39:07 ID:oScjO3eR.net Firefox3別にGTK対応しなくてよかったんだがなぁ 統一感出たのはいいが見た目がしょぼい……
30 :login:Penguin :2008/03/21(金) 08:04:49 ID:JTozrZN4.net Linux 上でのGTK+プログラミングの本スレは、ここ? 廃れすぎてるよ。 プログラミング板に行った方がいいのかな? でも、プログラミング板のは、Windows限定だしな...
31 :login:Penguin :2008/03/21(金) 10:35:43 ID:3ULYcj2H.net 本来はム板でやるべきだろうな。 こっちでやりたいなら何か話題振ってみれば?
32 :login:Penguin :2008/03/22(土) 21:13:17 ID:AyZW6HyO.net それじゃあ みなさんの開発環境(IDE)は何を使ってますか? オレはAnjuta+glade もっと優れたIDEあるのなら教えてほしい
33 :login:Penguin :2008/03/22(土) 21:33:51 ID:ldkQa/0V.net IDEは使っていない。SATAだから。(前半本当)
34 :login:Penguin :2008/03/22(土) 21:37:55 ID:AyZW6HyO.net >>33 ハイハイワラタワラタ それで何をつかってる?
35 :login:Penguin :2008/03/22(土) 21:39:06 ID:ldkQa/0V.net だからIDE使ってないってば。javaじゃあるまいし。
36 :login:Penguin :2008/03/22(土) 21:59:17 ID:AyZW6HyO.net >>35 吊れますか? IDE(Integrated Development Environment:統合開発環境) widestudioとか kylixとか
37 :login:Penguin :2008/03/22(土) 22:01:53 ID:aYSHgKNt.net エクリプス、最近ようやくAUTOTOOLSと一緒に使う方法が分かってきた。 ANJUTAのヘルプナビは便利だけど他の部分はCDTのがよいからなあ。
38 :login:Penguin :2008/03/22(土) 22:06:40 ID:lxQ3nqhW.net でもちょっと本腰入れて書こうってなったときはIDE使うとかなり便利だよ。 ちなみに俺もanjuta+glade使ってる。 そういえば誰かGtkBuilderを使ってる人とかいる? 俺はまだlibgladeから抜け出せないよ。
39 :login:Penguin :2008/03/22(土) 22:08:12 ID:lxQ3nqhW.net >38の一行目は>35宛て
40 :login:Penguin :2008/03/22(土) 22:13:46 ID:ldkQa/0V.net >>36 だから釣りじゃなくて使ってないと何度言えば。聞いたから答えただけ。 javaだとIDE使うケースが多いだろ?eclipseとかさ。 make gcc glade ・・・viでconfigure/makefileをゴリゴリだよ。 こんなん好きずきだろ。
41 :login:Penguin :2008/03/22(土) 22:19:12 ID:gdnM02dF.net IDE使ってないだけで釣り扱いとは……
42 :login:Penguin :2008/03/23(日) 01:33:29 ID:zAd/2L2S.net 俺Ubuntu 7.10使ってるんだけど、パッケージマネージャ(GUI)でインストール できるバージョンのAnjutaの動作がおかしいので仕方なくgeditのみ。 だれか必要なツールを含めたAnjuta環境の簡単なインストール方法知ってたら 教えてくれまいか。ネットを参考にしてソースから手作業でやろうとしたんだが、 複雑&面倒過ぎで挫折しますたorz
43 :login:Penguin :2008/03/23(日) 10:17:18 ID:OBasJEH+.net 私は今は普通にUbuntu7.10でanjuta使えてます。 Ubuntu7.10のベータの頃は確かに挙動がおかしかったので しょっちゅう落ちまくってましたが。 入れたのは「anjuta」と名のつくパッケージと、wxGtkのdev関係のVer2.8を片っ端から。 ちなみに今はanjutaの新規プロジェクトで選択できるwxWidgetsプロジェクトが一番楽なので 頼り切ってます。
44 :login:Penguin :2008/03/23(日) 11:17:19 ID:1HFMv5Qv.net gedit GNOME端末 ddd
45 :login:Penguin :2008/03/23(日) 14:53:17 ID:oxSgYePU.net kylixなんて久しぶりに聞いたな…。
46 :login:Penguin :2008/03/23(日) 18:19:48 ID:DWfALAId.net 開発環境の話はこっちで。 開発環境スレ (・∀・)デヴェロォォォップ!! http://pc11.2ch.net/test/read.cgi/linux/1039282447/
47 :login:Penguin :2008/03/24(月) 01:38:53 ID:Qk/VKx6p.net GTK+2の話もここでいいの?
48 :login:Penguin :2008/03/24(月) 02:38:12 ID:xdVA6Pwk.net いいんじゃない? つーかプログラム系のスレはどこも廃れてんだから あんまりわけることないよ。 ム板でって話もあるが そもそもLinuxからプログラミングの話抜いたら インスコの話しかのこらん。
49 :login:Penguin :2008/03/24(月) 21:13:51 ID:w0tQmto2.net anjutaをなんとか動かそうとむきになってたけど、自分はgladeが吐いたソースを ビルドできれば満足なことに気がついた。 gladeでぐぐって出てきたページを参考にやったら簡単にできたorz
50 :login:Penguin :2008/03/24(月) 21:16:44 ID:q1u759xh.net 2.13.Xからはgailが統合されるみたいだね。思い切ったことするなぁ
51 :login:Penguin :2008/03/25(火) 21:27:24 ID:f22Hmaea.net >49 glade2のソースを吐く機能っていうのは確かに手軽だけど、 吐くソースがobsoloteになってしまうとか、色々と不具合の温床になりそうだから、 glade3での機能廃止もしょうがないと思っちゃうんだよね。 所で、gtk-docで作る文書の国際化って結構めんどいね。 html2poと自作スクリプトで頑張ってみようかなって思ってるけど、 なかなかスマートにいかないや。
52 :login:Penguin :2008/03/25(火) 22:04:32 ID:Mm1m5DLO.net >>51 う〜ん、それなんかなかったかなぁ?どっかでみたような。すまん思い出せん。
53 :login:Penguin :2008/04/29(火) 19:11:04 ID:26XTARAt.net こんにちは 質問があります、gtkを使ったプログラミングをしたいのですが コンパイルがうまくいきません Vine Linuxを使っています。 % rpm -qa | grep gtk+ gtk+-1.2.10-0vl6 となっていますが % gtk-config gtk-config: コマンドが見つかりません. となってしまいます、なぜでしょうか?
54 :login:Penguin :2008/04/29(火) 19:17:39 ID:cCcJpKWp.net vineってgtk1しか入ってないの? deb系はよく知らないけどdevelみたいなのが必要なのかね。
55 :login:Penguin :2008/04/30(水) 12:15:31 ID:tQtvI8CE.net Vine が deb 系!?
56 :login:Penguin :2008/05/30(金) 13:13:29 ID:kzcW1sj3.net >>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 :2008/05/30(金) 13:16:35 ID:kzcW1sj3.net って日付見たらひと月前の質問か… てっきり昨日質問したのかと…
58 :login:Penguin :2008/05/30(金) 14:22:37 ID:ann5FY58.net はじめまして。 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 :2008/05/30(金) 14:43:11 ID:GKY/CzaG.net while (gtk_events_pending()) gtk_main_iteration(); を挟むとか。 g_timeout_addを使う方法もあるね。
60 :login:Penguin :2008/05/30(金) 15:17:07 ID:ann5FY58.net ありがとうございます。 while (gtk_events_pending()) gtk_main_iteration(); でうまく動きました。 助かりました。
61 :login:Penguin :2008/06/01(日) 12:51:26 ID:Qfk/evfC.net 質問ばかりですみません。 スタートをクリックしたらマウスカーソルを10秒間消したいと思っています。 カーソルを透明にしてやればいいと思うのですが、 よくわかりません。 よい方法がありましたら教えてください。
62 :login:Penguin :2008/06/01(日) 14:26:49 ID:vBepI6CX.net #!/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 :2008/06/01(日) 14:46:30 ID:vBepI6CX.net ちょっと修正 #!/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.net ありがとうございます。 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 :2008/06/01(日) 15:32:14 ID:vBepI6CX.net 試してみたらそれでうまく動くようだが。 gdk_window_set_cursor() の呼び出しはちゃんとしてる?
66 :login:Penguin :2008/06/01(日) 15:36:53 ID:Qfk/evfC.net ちょっと修正です。 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 :2008/06/01(日) 15:41:29 ID:vBepI6CX.net #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 :2008/06/01(日) 15:45:23 ID:vBepI6CX.net gtk_widget_realize() 前の widget->window を触ろうとしてるのが原因かな?
69 :login:Penguin :2008/06/01(日) 16:04:31 ID:wQKPJ8Cz.net 古いバージョンGtkを使ってたりしない?昔そういうのでハマったおぼえがある
70 :login:Penguin :2008/06/01(日) 16:10:28 ID:Qfk/evfC.net 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.net 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.net /* ウインドウを画面サイズに合わせる */ 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.net /* メインウインドウに垂直ボックスをパッキング */ 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 :2008/06/01(日) 16:46:47 ID:vBepI6CX.net 2.12.9 だけど、それでちゃんと動くよ
75 :login:Penguin :2008/06/01(日) 16:51:52 ID:Qfk/evfC.net ありがとうございます。 バージョンをあげてからやってみます。
76 :login:Penguin :2008/06/02(月) 16:55:12 ID:2n4LDSUT.net gtk+プログラミングについてお薦めの本とか出てないのでしょうか? 不勉強で付属のチュートリアルだといまひとつ良くわからなかったもので…。
77 :login:Penguin :2008/06/02(月) 17:09:32 ID:vhO0kEsD.net 日本語の本で勧められるようなのはないみたいです。 どっかの大学の先生が書いたPDFが参考になるかもしれません。 http://www.iim.ics.tut.ac.jp/~sugaya/books/GUI-ApplicationProgramming/ 個人的にはC言語以外の他の言語バインディングを使うのがおすすめです。 http://www.gtk.org/language-bindings.html
78 :76 :2008/06/02(月) 18:02:10 ID:2n4LDSUT.net >>77 早速教えていただいてありがとうございます。 参考にして勉強して行きますね。
79 :login:Penguin :2008/07/20(日) 20:11:46 ID:hZzIJHG7.net AMD、OpenGL性能を最大33%高速化させたLinux向けドライバ http://pc.watch.impress.co.jp/docs/2008/0630/amd.htm
80 :login:Penguin :2008/09/15(月) 23:03:03 ID:EmRnvQ2i.net てs
81 :login:Penguin :2008/09/22(月) 21:01:49 ID:8vBcGsdH.net Panedでユーザ操作によるリサイズを禁止することってできますか?
82 :login:Penguin :2008/10/18(土) 23:02:28 ID:3BBs8DQQ.net >>77 gtkmmかGtk#辺りが無難なのかなぁ。 GNOME公式のアプリにもC#で書かれたモノが増えてきているようだし。 外国ではPythonで書かれたアプリも沢山あるみたいだけど、 国内だと情報が少なそうだしな。
83 :login:Penguin :2008/10/18(土) 23:10:39 ID:QtgieN1g.net どうせ英語は読むことになるからpythonでやるのが無難 GNOMEにはpythonアプリたくさんあるしね
84 :login:Penguin :2008/10/18(土) 23:12:21 ID:7K6B6OYK.net Gtk#はないな。gtkmmでしょう。
85 :login:Penguin :2008/10/18(土) 23:13:41 ID:HfwrrshF.net Cでシコシコやろうとしてる/やってる俺はどうなんでしょ
86 :login:Penguin :2008/10/19(日) 00:01:40 ID:fwxWu968.net とりあえずgtkmm関連の日本語のページを読みながらチマチマと勉強中。 JDのソースとか参考になるかなぁ。 > どうせ英語は読むことになるから ですよねーorz日本語の情報少ないもんなぁ… > Gtk#はないな そうなのか? Novellが関わってるのがアレだけど、C#は覚えやすいと思うんだが。 >>85 > Cでシコシコ 漢
87 :login:Penguin :2008/10/19(日) 00:04:39 ID:f0AiiEyf.net 自分で参照カウンタを管理するのはめんどい
88 :login:Penguin :2008/10/19(日) 12:37:59 ID:mBsqsk/K.net いっそのことRubyでいこうよ。
89 :login:Penguin :2008/10/19(日) 14:31:15 ID:lf2/OYv6.net linuxなら c, gtkmm + python で 鉄板だろ 移植性とかいいだすのが間違いのもと。 まずはc#, javaの排除から。 つーか、そういうのってmsやsunの儲けにしかならんよね、実際。
90 :login:Penguin :2008/10/19(日) 18:09:25 ID:ZgmXTrMt.net 今、ruby-gtk2を使って簡単な画像ビューワを作っています。 デスクトップにフィットさせて表示(大きい場合は縮小表示)させたいのですが、 パネルとかウインドウマネージャの装飾を考慮して、画像を表示できる最大の サイズを知りたい場合、どうしたら良さそうですか? 探してはいるものの、なかなか良さそうな手が見つからないです。
91 :login:Penguin :2008/10/19(日) 19:54:56 ID:3IMHrYAs.net gtk2hsにトライしたが、一部関数が無くてダメでした。まあこれからか。 erlgtk使いの人とかどう?
92 :login:Penguin :2008/10/19(日) 20:28:12 ID:Su20jt3Y.net >>90 ウィンドウを maximize した時にでるシグナルの中でウィンドウ サイズを取得して、画像のサイズを拡大縮小とか。 これだと、ウィンドウが出てから画像が出るまで、間が空くか?
93 :90 :2008/10/20(月) 00:25:14 ID:s5JT3EOQ.net >>92 レスありがとうございます。 やっぱり、そういうちょっと強引な方法しかないんですかね。 せっかく教えてもらったんですが、ちらつきそうなので、できれば避けたいです。 今は、スクリーンサイズを取ってきて適当なサイズで妥協しています。 何かあっても良さそうなのになぁ。。。
94 :login:Penguin :2008/10/20(月) 00:34:47 ID:upSqhUNX.net >>93 "expose-event"シグナルかな、rubyであるのかは分からないけど
95 :login:Penguin :2008/10/20(月) 02:08:26 ID:RwkYMDWR.net >>90 昔SunのJDKのソースを読んでいたことがあるんだが、当時のJDKの実装では、 1) 使われているwindow managerを特定 2) 有名(あるいは標準的と言うべき)なwindow managerであれば、 それぞれのwm固有の枠部分の装飾手段(Windowの重なり具合など) の知識を基に、今有るウィンドウの親を手繰ってwm由来部分を調査し wm由来部分のサイズを決定 3) 知らないwmは非サポートってことで適当に…… なんてことをしていた ここ数年で提案されてない限り、良い方法はないと思われ
96 :login:Penguin :2008/10/20(月) 05:08:18 ID:mB1jem32.net 実際にmaximizeするしか知る方法はないだろう? 強引というならそれをやる前に知ろうとする方が強引のような。 それにGTK+はデフォでdouble-bufferedだから何も考えなくてもちらつきしない。
97 :login:Penguin :2008/10/20(月) 07:37:12 ID:DDLH0hrK.net >>96 > 実際にmaximizeするしか知る方法はないだろう? > 強引というならそれをやる前に知ろうとする方が強引のような。 同意。それ以外のやり方してるソフトなんてないのでは?
98 :90 :2008/10/20(月) 21:27:41 ID:s5JT3EOQ.net レスありがとうございます。 >>94 ごめんなさい、"expose-event"シグナルはrubyでもあるのですが、94さんの意図が よく理解できませんでした。 >>95 詳しい情報ありがとうございます。 Sunの人でさえ、そういう実装をされているくらいだから、簡単な方法は無さそうですね。 >>96 ,97 そんなことを簡単に知ろうという方が間違いですかね。 ちなみに、ちらつくと書いたのは、実際maximizeしてからサイズを取ってくるとすると 画面に表示することは避けられず、一瞬maximizeしたウインドウが見えてしまうという 意味で書きました。 まだGTKのシグナルがどんなタイミングで発行されるのか、よく理解できていないので 誤解しているかも知れませんが。
99 :94 :2008/10/20(月) 23:02:02 ID:upSqhUNX.net >>98 すみません、>>90 さんの要求を正しく理解していませんでした。 最大化できるサイズを求めるというのではなくて、あくまでアプリ側で必要な サイズ(GtkRequisition)と、実際に獲得できたサイズ(GtkAllocation) で実装するのはいかかでしょうか?
100 :login:Penguin :2008/10/21(火) 02:53:13 ID:5A1QOuH6.net >>98 > まだGTKのシグナルがどんなタイミングで発行されるのか、よく理解できていないので > 誤解しているかも知れませんが。 どう考えてもこれがガンだろ。呆れた。
101 :90 :2008/10/21(火) 23:21:31 ID:rjo5j4+k.net >>99 色々、考えて下さり、ありがとうございます。 >>100 まあ、そう言わんで下さい。 皆さんに教えて頂いたことをヒントに、時間が取れるときに もっと勉強しようと思います。 レスをしてくれた方々、ありがとうございました。
102 :login:Penguin :2008/10/22(水) 01:14:52 ID:1Hw6zT+4.net 複数のファイルをユーザーに選択させ、そのファイルのパスをリストなり 配列なりで得たいと考えています。 調べてみたところ GtkFileChooserDialog は単一ファイル|ディレクトリ にしか対応していないようなのですが、上記のような機能は自前で実装す るしかないのでしょうか。
103 :login:Penguin :2008/10/22(水) 01:40:40 ID:TbaNGOlU.net >>102 gtk_file_chooser_set_select_multiple() gtk_file_chooser_get_filenames() の組み合わせじゃ駄目なのかい?
104 :login:Penguin :2008/10/22(水) 10:25:49 ID:ApulL45s.net >>103 ありがとうございます。完璧に私の調査不足でした。 教えていただいた方法でいけそうです。
105 :login:Penguin :2008/10/25(土) 10:14:11 ID:dTl3thQm.net glade3の最新版にしたらいつの間にかGtkBuilder形式でも出力できるようになってたよ。 さすがにウィンドウ別に分けて出力はしてくれないけど。
106 :login:Penguin :2008/10/25(土) 15:02:49 ID:AakIN1gI.net PyGTKでランチャー作ってます ホットキーから呼び出すにはどうすれば やはりgconf弄らないと無理なのでしょうか。
107 :login:Penguin :2008/10/25(土) 17:13:44 ID:zQTl7fNi.net どのウィンドウがフォーカスされている状態でもキー操作で呼び出したいってこと? そりゃXならウィンドウマネージャの仕事だ。
108 :login:Penguin :2008/10/25(土) 17:58:26 ID:AakIN1gI.net >>107 そうです どんな操作してるときもホットキーから呼び出したいので PyGTK以外の言語は全く解らんのですがXLibあたりですかね これさえ備えられればほぼ完成なんです ありがとうございました。もう少し調べてみます
109 :login:Penguin :2008/10/25(土) 18:06:09 ID:e1TliF6D.net >>108 それ俺も知りたい。分かったら教えてくれ。
110 :login:Penguin :2008/10/25(土) 18:20:20 ID:zQTl7fNi.net >>108 ウィンドウマネージャにショートカットで任意のプログラムを呼び出すような 親切機能がついていればできる、なければ基本的にできない。
111 :login:Penguin :2008/10/25(土) 21:12:08 ID:UmyLPmdd.net こんなんでどうよ #!/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 :2008/10/26(日) 00:16:49 ID:cuuCZE3q.net >>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 :2008/10/26(日) 00:20:34 ID:dWWl1VvV.net >112 xbindkeysのソースが参考になるかもね。 でもgdkとgtkだけで済ませたい気もする。
114 :login:Penguin :2008/10/26(日) 01:05:43 ID:w1SELDT+.net >>112 <shift><ctrl>aです
115 :login:Penguin :2008/10/26(日) 02:08:20 ID:cuuCZE3q.net >>113 これCですか?現時点では意味不明でした。 やはり最低でも2言語くらい習得しないと細かい所が弄れませんね。 >>114 それも試してみましたが何故が無反応でした。 さらに一週間くらい調べてみます。
116 :login:Penguin :2008/10/27(月) 22:08:10 ID:hjSX5CJk.net glade3といえば日本語メッセージの翻訳が迷訳てんこもりで参った記憶しかないぞ。 ありゃGTK+プログラミングろくに理解してない奴が訳してるんだろうなあ。
117 :login:Penguin :2008/11/02(日) 17:56:33 ID:8LwLmm0R.net 出版界を見ると、GTK+よりもQtの方が元気があるように見えるんだけど、 ユーザ数ではどうなんだろう。日本でも最近出てる本はQtのだよね。
118 :login:Penguin :2008/11/02(日) 18:07:31 ID:f8W85vrO.net 出版ではQtだが、実際にはgtkのほうが人気がある。 ユーザ数でもおそらくgtkのほうが多い。 なぜQtの本のうほうが多いのかは謎。 gtkの本ってなんであんなに少ないんだろうか。
119 :login:Penguin :2008/11/03(月) 12:00:13 ID:zVTwcnmi.net 一つの指標として 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 :2008/11/03(月) 12:19:36 ID:f8RoxdRr.net ネット上のドキュメントが充実してるからとか? 洋書も最近のはQtの が多いよね。 日本GNOMEユーザー会とKDE ホームページ(日本KDEユーザ会)の サイトを比べてみると、一見KDEの方が勢いがあるように見えるけど、 リンクのメンテがボロボロだな。
121 :login:Penguin :2008/11/03(月) 12:24:19 ID:f8RoxdRr.net >>119 なんかKDE/Qtのが優勢な感じw
122 :login:Penguin :2008/11/03(月) 13:56:17 ID:7ydUuqhV.net >>119 一部Quicktimeだったりしないか? http://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 :2008/11/03(月) 22:01:57 ID:57+pbs2m.net Ubuntu人気があるからgnomeのほうがユーザ多そうだけどな、実際どうなんだろな。 あと他言語のバインディングではgtkのほうが優勢な気がするんだがどうなんだろ。 QtHaskellとか使ってる人いる?俺はgtk2hs使ったけど使い物にならなかったよwww必要関数無くてwwww。
124 :login:Penguin :2008/11/03(月) 22:39:37 ID:iQkJfTcr.net Ubuntu, Fedora, Debian, Vine(笑)とか標準ではたいがいgnomeだからね。 やっぱシェア(数)はやっぱgnomeが多いんじゃないの? KDEはOpenSUSE, Mandriva(turbo)とか。 まぁ前出のgnomeトリはたいがいKDEの派生つーかブランチもあるし 入れ替えたって(共存させたって)いいんだけどね。
125 :119 :2008/11/03(月) 23:02:36 ID:zVTwcnmi.net >>122 一部ノーム(地名)だったりもするぜ
126 :login:Penguin :2008/11/03(月) 23:40:33 ID:CkL33X1G.net ユーザーはともかく、クリエータはGTK(GNOME)の方が多いだろう GTKがLGPLなのに対して、QtはGPLか最近のtool kit としては高額の 有償ライセンスかのいずれか 利用できる人間は、どうしても限られてくる
127 :login:Penguin :2008/12/17(水) 15:27:32 ID:KRTiKwTi.net 欲しいソフトがないから自分で作ろうと思う。 だが、どの言語もソースは読める程度、簡単な改造が出来る程度のレベルです。 だが、一からあのソフトを作りたい・・・。 そんな俺はどのようなGTK開発環境が良いとおもいますか? 今考えているのは、 Pygtk + grade の組み合わせです。 これを薦めるハッカーが多いのと、Pythonという言語がしっくりくるからです。 ほか、初心者におすすめのGTK開発環境がありましたら教えて下さい。
128 :login:Penguin :2008/12/17(水) 18:01:23 ID:lMmUsPdE.net まあそのへんより簡単なのは無さそうだよね。自分はRubyが好きなので Rubyで勉強してるけど。
129 :vte :2008/12/17(水) 19:59:56 ID:4+kAQRIa.net vte-0.17.4 を ./configure && make && make install してみたのだけど, 画面端で漢字入力を始めると, 折り返しも延長もしてくれず, 入力文字が見えなくなる. | ▽かんじに| のように. でも次のようになってほしいのだけど, | ▽かんじに| |ぅりょく | とか. gtk-demo の text-widget の multiple views などはうまくいってます. .gtkrc-2.0 とかに何か設定が必要でしょうか?
130 :login:Penguin :2008/12/22(月) 09:25:07 ID:Z0zqkFax.net >>127 GTKmm
131 :login:Penguin :2008/12/23(火) 19:56:34 ID:3l8ZCr+m.net ところでpygtkって遅くね? Core2Duoのマシンでボタンクリックしてからレスポンスが10秒後とかザラなんだが。 gtkmmとか生のgtkのほうがいいんじゃね?
132 :login:Penguin :2008/12/23(火) 20:16:59 ID:LQjeTU8C.net gtkmmは地獄。
133 :login:Penguin :2008/12/23(火) 21:14:13 ID:2F34Up+Q.net レスポンスが10秒後ってなんか間違えてるんじゃ
134 :login:Penguin :2008/12/23(火) 21:25:44 ID:ae4qT9Yd.net PyGTK + glade3 の日本語チュートリアルのようなものありませんか? この辺りが翻訳されているのですが、glade3では動きませんでした・・。 http://po3a.blogspot.com/2006/08/pygtk-glade-gui.html http://po3a.blogspot.com/2006/08/pygtk-glade.html Rubyで勉強したほうが情報多い?
135 :134 :2008/12/23(火) 21:34:16 ID:ae4qT9Yd.net こちらのサンプルは PyGTK + glade3 動きました。 ttp://palepoli.skr.jp/content/python/window1.php でもここから先が進めません。 PyGTK + glade3 で勉強になるサイトがあったら教えて下さい。 英語でもいいです。宜しくお願いします。
136 :login:Penguin :2008/12/24(水) 06:59:19 ID:aQCa49jr.net pygtkのことは知らないんでよくわからないけど、これとかは? http://www.micahcarrick.com/12-24-2007/gtk-glade-tutorial-part-1.html これでだめなら、ウェブ全体からググれ。 ちなみにruby用の日本語チュートリアルはglade2使用。 http://ruby-gnome2.sourceforge.jp/ja/hiki.cgi?libglade2-tut
137 :134 :2008/12/24(水) 09:50:41 ID:hiOOXDc5.net >>136 ありがとうございます。 参考になりました。
138 :login:Penguin :2008/12/24(水) 11:47:11 ID:j0KWvBZ+.net C++/GTKで書いたプログラムを wxPythonで書き直したら wxPythonで作った方がサクサク速く動いた orz
139 :login:Penguin :2008/12/24(水) 14:47:02 ID:gkyqeyAR.net windows上か?
140 :login:Penguin :2008/12/24(水) 15:36:14 ID:EbVd5uRZ.net PHP-GTKってどうよ?
141 :login:Penguin :2008/12/26(金) 04:24:16 ID:0/dGPTTl.net そんなのあるのか。今度試してみよう。
142 :login:Penguin :2008/12/26(金) 23:23:17 ID:Z/96o+8l.net いまさらかもしれないが時代は今CAIROだということに気づいた http://journal.mycom.co.jp/series/firefox/005/ プラットフォームやハードウェアに依存せず精密な描画が可能になるらしい CAIRO使えるのはGTK+2.10から上のver 誰か使ってる人いる?
143 :login:Penguin :2008/12/27(土) 00:05:03 ID:7rBKxqYP.net 時代を読み違えてるな。 ベクトルベースとか3DデスクトップとかVistaとともに沈んだよ。 PC肥大化狂騒曲は終わりだ。Qt4も総スカンだし
144 :login:Penguin :2008/12/27(土) 06:06:34 ID:B/jsjdnT.net いやでも実際有名どころで使われてるわけだし それに素のGTKのみで描画するより処理速度は速くなるし, プラットフォーム間の互換性も高まると思う 別に肥大化してるわけじゃないしVistaや3Dデスクトップとはちょっと違うだろう gtkがcairoをサポートしてまだ日も浅いしむしろ今からが勝負
145 :login:Penguin :2008/12/27(土) 12:41:23 ID:6Qaozst9.net ふつーに使ってる。フォントの取り扱いがプラットフォーム中立にできればなおいいのだが。
146 :login:Penguin :2008/12/27(土) 13:12:28 ID:IS4Ugvd/.net Cairo のフォント描画は Windows 上だとジャギが目立つ。Linux 上では問題無し。 何か設定がいるのかしら。
147 :login:Penguin :2008/12/27(土) 20:23:11 ID:B/jsjdnT.net 普通ベクトル・グラフィクスにジャギーは発生しない なにか間違ってることは間違いない
148 :login:Penguin :2008/12/27(土) 20:43:22 ID:6XGFKeOe.net >>144 速くなるって、なんかベンチの結果でもあんの? skiaを用いているgoogle chromeのcanvasが爆速という話なら聞いたことがあるが >>146 普通にcairoをコンパイルすると、Windowsではcairo-win32-font.cが使われる これは普通にGDIを用いているので、普通のWindowsアプリのフォントの レンダリングと全く同じ結果になる 一方LinuxではFreeTypeが使われる
149 :login:Penguin :2008/12/27(土) 21:26:06 ID:mPWXe8Aq.net a
150 :login:Penguin :2008/12/27(土) 22:20:00 ID:B/jsjdnT.net >>148 firefox2とfirefox3の速度比較は 確証を裏づけるものにはならないか? 一般的にラスター描画よりベクトル描画の方がデータ数が少なく、描画速度は速いと言われているし ところでskiaて何?
151 :login:Penguin :2008/12/28(日) 10:40:10 ID:xJesvUS3.net mexo hanaxo
152 :login:Penguin :2008/12/28(日) 11:37:59 ID:5NoVhFnO.net >>145-146 フォント描画にはPangoを使えばいいんじゃないの?
153 :login:Penguin :2008/12/29(月) 18:19:47 ID:qsmFI5vI.net >>150 ttp://www.hyuki.com/yukiwiki/wiki.cgi?VectorDrawing skiaは google chrome skia あたりでぐぐれ
154 :login:Penguin :2008/12/29(月) 22:41:52 ID:mdZmAujL.net >>153 これはハードウェア実装のOpenGLによるベクタ描画と ソフトウェア実装のcairoによるベクタ描画の実験結果だな... ハードウェア実装だとプラットフォームやハードウェア環境の影響を受けるが ソフトウェア実装より格段に速度を上げられる だからこそcairoにもOpenGLによるハードウェアアクセラレーションのサポートがあるわけだが... でもビデオカードやらのGPU性能依存というのは それこそ3DデスクトップやらVistaやらのPC肥大化狂騒曲じゃないのか? ハードウェア実装を否定してるわけじゃないが これはアリなの? そこのところどうなんよ?
155 :login:Penguin :2008/12/29(月) 23:04:54 ID:qsmFI5vI.net >>154 んー それを言うなら、GDIだってハードウェアアクセラレートされていて、 GDIがソフトウェアでエミュレートされるようになったWindows Vistaでは 実際描画が遅いのなんのと騒ぎになっていたわけだろ cairoは、下のレイヤの上に乗っかって、アンチエイリアス描画を行うから、 一般的には下のプリミティブをそのまま用いるのではなく、 pixmapの上にソフトウェアレンダリングを行う形になる だから結果は綺麗だが、それが高速化につながるという意見はさっぱりわからんね 皮をかぶせれば、ポータビリティは高まるかもしれんが、速くなるわけがないよ 個人的にちょっと試した限りでは、少なくともWindowsで普通にコンパイルした cairoは、遅いといわれるGDI+よりもまだ遅いぐらいだ 同種の競合ソフトのaggと比べても、やはり遅いな
156 :login:Penguin :2008/12/30(火) 02:24:04 ID:chmi7ht1.net cairoの下のレイヤって何? cairoはGTK+/GDKやXlibの上にはない そもそもpixmapのようなラスタデータ上にベクタデータを ラスタライズしても綺麗な結果にはならない Vistaが重い一番の理由はVistaのコアが4Gとかのせいじゃなかったか?
157 :login:Penguin :2008/12/30(火) 03:17:23 ID:xp1VmVKW.net >>156 > cairoの下のレイヤって何? > cairoはGTK+/GDKやXlibの上にはない ???? cairoは何らかのバックエンド(サーフェス)の上で描画を行うわけだが 一体何を言ってるんだ > そもそもpixmapのようなラスタデータ上にベクタデータを > ラスタライズしても綺麗な結果にはならない ビットマップディスプレイに、ラスタデータ以外をどうやって描画するんだ? ベクタグラフィックスだろうが3Dだろうが、ビットマップディスプレイに 描画するときは、*必ず*2Dラスタデータに落とす(=レンダリング) しなければ、描画のしようがないのだが、そんなことも知らないのか? レンダリングをソフトウェアで行うか、ハードウェアで行うかは 実装の問題だがな
158 :login:Penguin :2008/12/30(火) 03:38:55 ID:F99IYk+S.net 他の領域に落としたらそれが遅くなる原因だしな。 絵の処理なら、cpuから見えるメモリ領域のビットマップに転送が遅くなる原因のno1。 cairoは、その辺がすべてバックエンド任せでさらにメモリ上でいじるので、 普通に使うと遅いソフト(cpu)処理の部類に分類される。 てか、cairoの中身でも描画なんかは一切触れずに、cairo_surface_tで共通化とでしか使ってないと思うんだけどどう?
159 :login:Penguin :2009/01/04(日) 04:31:10 ID:OlEL3WLc.net 待てばcairoの日和あり
160 :login:Penguin :2009/01/04(日) 09:09:03 ID:Ls6s3Y+a.net で?
161 :login:Penguin :2009/01/08(木) 14:49:56 ID:25IYEPJi.net 初めて拝見するが、 ここの良スレ度にびっくりした。
162 :login:Penguin :2009/01/11(日) 10:45:28 ID:G50GhRZF.net 「右」キーにアクションをバインドしたいんですが、どうすればできますか? 今は仕方なく gtk_widget_add_accelerator (foo, "activate", accel_group, GDK_Right, GDK_MODIFIER_MASK, GTK_ACCEL_VISIBLE); のようにしてますが、実際は GDK_MODIFIER_MASK 無しで「右」キーのみ で作用するようにしたいんです。
163 :login:Penguin :2009/01/12(月) 22:30:23 ID:Ap11sUPz.net ところでさ、なんでGtkTreeViewColumnに gtk_tree_view_column_get_widthはあるのにgtk_tree_view_column_set_widthはないの? なんでカラムの幅を非常にまわりくどい方法でセットする事しかできないんだろう。
164 :login:Penguin :2009/01/13(火) 21:49:47 ID:4aexh9M5.net バカ除けのため
165 :login:Penguin :2009/01/14(水) 06:35:18 ID:ON4hZt79.net >>164 なにそれww
166 :login:Penguin :2009/01/14(水) 10:40:30 ID:hbYm8nJe.net >>163 他のコラムに対する影響を考えないといけないからでないの? 推測だけど
167 :login:Penguin :2009/01/19(月) 07:00:18 ID:Zkvelgln.net どうすればtoolbarを縦に位置させることができますか?
168 :login:Penguin :2009/01/19(月) 14:58:09 ID:rA2FfI0+.net ディスプレーをガタンとですね
169 :login:Penguin :2009/01/19(月) 15:05:50 ID:Zkvelgln.net >>168 ???
170 :login:Penguin :2009/01/20(火) 05:28:26 ID:N3/xwV6v.net >>167 D&D
171 :login:Penguin :2009/01/20(火) 07:38:29 ID:eUZx4J2+.net >>168 ワロタ
172 :167 :2009/01/21(水) 13:15:59 ID:cRTwudVb.net >>168 真面目に答えていただけませんか? >>170 詳しく教えてください。
173 :login:Penguin :2009/01/21(水) 16:47:39 ID:oi/rQuGm.net >>172 自分は真面目に調べたのか?
174 :login:Penguin :2009/01/21(水) 22:48:05 ID:zay9Vio9.net >>167 まず言語は何でプログラミングしてるの? 個人的には盛り上がって欲しいスレではあるのだけれど。 CでガリガリGTKアプリ書いてる人あんまりいないのかな…
175 :167 :2009/01/22(木) 01:25:28 ID:qMqmINP5.net >>174 C でやってます。
176 :login:Penguin :2009/01/22(木) 02:12:53 ID:N/oI0lI0.net >>175 set_orientationでvertical指定 詳しくはググれ
177 :login:Penguin :2009/01/23(金) 07:41:44 ID:Azeyn9TC.net Objective-C使ってます
178 :167 :2009/01/23(金) 13:07:07 ID:AEZO7GNu.net toolbar を縦(vertical)に配置することには成功したのですが、 menubar を縦(vertical)に配置する方法が見つかりません。 // 例えば、menubar に対しては gtk_toolbar_set_orientation と同様の関数が存在しません。 どうすればできるでしょうか?
179 :login:Penguin :2009/01/24(土) 17:41:53 ID:j3OrWlaN.net 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.net お前等、なにも知らないんですね。
181 :login:Penguin :2009/02/02(月) 10:47:56 ID:IIH5qxfd.net もともと閲覧者が少ないスレで 自分の欲しいタイミングで回答を得ようとしてるのが間違い 半年位待ってみろ
182 :login:Penguin :2009/02/02(月) 11:13:18 ID:6BkR0lwx.net >>181 では、LinuxでGUIを作るにはどのライブラリを使うのでしょう?
183 :login:Penguin :2009/02/02(月) 11:41:10 ID:J5ctVuxx.net * 女でLinux使ってる奴 -- http://pc11.2ch.net/test/read.cgi/linux/1224332593/355 355: login:Penguin [] 2009/01/19(月) 12:20:24 ID:Zkvelgln 私は女に一番受けのいいlinuxディストリビューションを知っている。 * Gnome vs KDE -- http://pc11.2ch.net/test/read.cgi/linux/1185851003/136 136: login:Penguin [] 2009/02/01(日) 11:19:51 ID:lE4ur93H 今 C の gtk+ 使ってアプリ書いてるけど、 血反吐でそうなぐらい面倒くさい。。。 だれかもっと使いやすいライブラリ作ってくれ。。。 * 女でLinux使ってる奴 -- http://pc11.2ch.net/test/read.cgi/linux/1224332593/417 417: login:Penguin [sage] 2009/02/01(日) 12:29:52 ID:lE4ur93H >>416 発音は「テック」。 英語ができない日本人はなぜか「テフ」と言っている。 偽の発音を使い続けるのはそろそろ止めにしないか? 本当は「イケマン」と言うべきなのに、「イケメン」 と言う日本人。もうね、アホかと。 * 女でLinux使ってる奴 -- http://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 :2009/02/02(月) 13:03:00 ID:9NCOwk9m.net >>183 変な事言ってるように仕向けたいんだろうけど、 lE4ur93Hは正当な事言ってんじゃん。
185 :login:Penguin :2009/02/02(月) 20:46:11 ID:2frQG7fR.net ただの荒らしコピペに反応すんなよ NG登録されて回答もらえなくても知らんぜ
186 :login:Penguin :2009/02/10(火) 20:32:40 ID:8DV6Um/n.net ファイル選択ダイアログを、ターミナルから閉じたくて、 下の処理を入れたのですが、ダイアログを閉じた後、応答が無くなります。 (GUIでキャンセルボタンや×をクリックすると正常に閉じれる) どうすれば、ターミナルから正しく閉じれるかを教えてください。 GtkWidget *filew = NULL; void FileSelection::destroyFileSelection() { status = false; gtk_widget_destroy(filew); }
187 :login:Penguin :2009/03/29(日) 11:33:55 ID:JOkFFCq+.net Windowsでは、自分以外のプロセスが管理しているウィンドウのハンドル(動作中のOS上で ユニークな識別番号)を得ることができれば、そのウィンドウのサイズやデスクトップ上での 位置などを好きにいじくったりできるのですが、LinuxのGTK+(またはGNOMEもしくはX Window System)にそのようなAPIのようなものはありますか?
188 :187 :2009/03/29(日) 11:38:55 ID:JOkFFCq+.net すみません、ageさせてください。 なにがやりたいかと言うと、特定の文字列をウィンドウタイトルに含むトップレベルの ウィンドウに対して、デスクトップ上での表示位置やサイズを変更したりといったことです。
189 :187 :2009/03/29(日) 20:36:19 ID:JOkFFCq+.net 自己レス libwnckてのが関係ありそうだが、Rubyから使えるんだろうか。Pythonにはそのための モジュールが既にあるみたいなんだけど。今Ubuntu起動できないからよくわからん。
190 :login:Penguin :2009/03/29(日) 21:12:45 ID:Afl3tAxS.net >>187 wmctrl コマンドのソースでもみればいいんじゃね?
191 :187 :2009/03/30(月) 10:56:06 ID:+ewzli1b.net レスありがとうございます。こんなコマンドがあったんですね。自分の目的にはこれを 利用するだけで十分そうですが、ソース読むのも勉強になって面白そうですね。 結果的にスレ違いになってしまってすみません。
192 :login:Penguin :2009/04/23(木) 11:32:24 ID:rK6Swnpx.net だれか clispからgtkを使う方法を教えてください
193 :login:Penguin :2009/07/10(金) 07:43:15 ID:jUacI/UD.net VMwareがGtk産だったとは
194 :login:Penguin :2009/07/17(金) 23:36:58 ID:hHQTz6KG.net 本気で聞く おまえらはどうやってGTK+勉強なさいましたか?
195 :login:Penguin :2009/07/18(土) 13:41:00 ID:MyXAq5ze.net >>194 GTK+ソース付属のexamples+demosを動かして遊ぶ ↓ GTK+ソース付属のtutorialを一通りこなす web: http://library.gnome.org/devel/gtk-tutorial/stable/ ↓ doc/reference読み方を覚える ↓ 小さいアプリをsourceforgeとかfreshmeetで見つけてきて参考にする ↓ irc.freenode.netの#gtk+とかメーリングリストで質問
196 :login:Penguin :2009/07/18(土) 15:41:41 ID:0IAjxnq5.net 難しそうですね 断念しました ありがとうございませんでした
197 :login:Penguin :2009/07/18(土) 18:31:08 ID:NxC2oWbI.net 何をどう見たら難しそうなんだよ? ゆとりか? 英語にびびるな! サンプルソースなんてコピればコンパイルできる WindowsでもLinuxでもCode::Blocks使えばそれほど コンパイルできる開発環境の準備には手間取らない
198 :login:Penguin :2009/07/18(土) 19:30:03 ID:+ryPUP7D.net ママが一から十まで教えてくれなきゃイヤなんじゃね
199 :login:Penguin :2009/07/18(土) 20:00:15 ID:ghQ1gSty.net pygtkがいちばんやさしくてにょろにょろ
200 :login:Penguin :2009/07/18(土) 20:39:03 ID:0IAjxnq5.net >>197 そうですね サンプルソースをコピーして勉強したことにしようと思います >>198 そうですね パパじゃいやです >>199 そうですね 数十年ぶりにしゃぶりたいです >>195 俺、本気になります!真面目に勉強します! ありがとうございました!!
201 :login:Penguin :2009/07/19(日) 01:03:57 ID:vKaqQMs4.net 携帯とか組みこみでGTK+を使っているものって何かある? 海外では結構あるみたいだけど、日本だと聞かないよな。
202 :login:Penguin :2009/07/24(金) 16:52:07 ID:99ViSCNs.net >>201 書いてないだろ常考
203 :login:Penguin :2009/07/24(金) 17:15:55 ID:aH4gErtS.net >>202 は日本語に不自由な方?
204 :login:Penguin :2009/07/24(金) 17:48:23 ID:99ViSCNs.net うん
205 :login:Penguin :2009/07/24(金) 23:12:42 ID:6YmCBCzn.net GTKはもう少しで消滅する googleの新しいソリューションに置換される
206 :login:Penguin :2009/07/25(土) 04:36:37 ID:00SH8Kn9.net Chrome OS の事か? 確かにウィンドウシステムは時前のものを用意するらしいけど、 どうなんだろうね。そもそもソースが公開されるかどうかも怪しい。 それに、GTK+の培ってきた年月を一気に越えられるとも思えないし。
207 :login:Penguin :2009/07/25(土) 05:18:20 ID:corW1o/2.net グーグルは基本Qtじゃないの。 でも今更ブラウザの下の層なんか関係ないはず。 HTML5 でアクティブデスクトップっていう懐かしいお話をもう一度やるんでしょ
208 :login:Penguin :2009/07/25(土) 06:22:09 ID:00SH8Kn9.net まぁ、googleはWEBアプリが基本だから、そうなるのかね。 ただ、この事前の大袈裟なプロパガンダはMSに似てるなw
209 :login:Penguin :2009/07/25(土) 09:19:09 ID:wdRQEHVW.net GTKスレはあるのにQTスレがないのはなんでだろう〜
210 :login:Penguin :2009/07/25(土) 10:58:46 ID:QoKls/xb.net >>209 ム板にあるからじゃないか?
211 :login:Penguin :2009/07/25(土) 11:39:56 ID:IOPwPp1+.net >>209 http://pc12.2ch.net/test/read.cgi/tech/1239996587/ どっちかと言うとQtの方が活発
212 :login:Penguin :2009/08/23(日) 00:41:14 ID:cXbPjTOU.net 初歩的な質問です。 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 :2009/08/23(日) 01:17:03 ID:oYmg5B0H.net Xを使わずにフレームバッファを使うGTK+とやらはインストールしてあんの?
214 :212 :2009/08/23(日) 02:02:51 ID:cXbPjTOU.net debian上からaptitudeでlibgtk2.0とlibgtk2.0-dev関連のライブラリをインストールしてあります。
215 :login:Penguin :2009/08/23(日) 06:49:16 ID:Do4KpMOi.net Xを使わないと動かんよ。 Gtk+はXLibの面倒臭さを軽減するためのライブラリに過ぎんのだから。 Windowsに移植する場合にもXLib相当のが要る
216 :login:Penguin :2009/08/23(日) 09:20:44 ID:WBxszhFm.net >>214 それはX用のパッケージ。 フレームバッファ用のGTKはlibgtk-directfb-2.0-*だぞ。 >>215 知ったか乙
217 :212 :2009/08/23(日) 10:44:26 ID:cXbPjTOU.net >>216 そうなんですか! 以前ググったら下記サイトのフレーズが目に留まり、てっきりDirectFBじゃなくてもフレームバッファでも利用可能なのだと思ってました。 orz ttp://armadillo.atmark-techno.com/articles/sd-a500-embedded-course-ch3 >GTK+ >GNOME アプリケーションでユーザインターフェースを構築するのに利用される基礎的なライブラリで,XWindow System 上で動作します(http://www.gtk.org/ ).フレー>ムバッファやDirectFB 上などでも動作するように設定することができます. ご教示いただいたライブラリをインストールして確認してみます。
218 :login:Penguin :2009/08/29(土) 19:05:24 ID:7RbftsXX.net libgrade+gtkmmをいじって遊んでいるのだけど メインウィンドウからダイアログのようなウィンドウを開く サンプルは何処かに有りませんでしょうか
219 :login:Penguin :2009/08/29(土) 21:56:36 ID:OBRUPUZc.net >>218 gtkmm-demo を起動してみては? 結構いろんなサンプルがあるな > gtk-demo pygtk-demo gtkmm-demo
220 :login:Penguin :2009/08/30(日) 01:00:57 ID:XE+apBqt.net >>219 libgladeを使っていない様です。
221 :名無しさん@そうだ選挙に行こう :2009/08/30(日) 08:33:18 ID:Czh9S0PJ.net >>220 libgladeは使われなくなる方向だから、、、って思ったけど、 gtkmmだとBuilderを使ったサンプルが無いな。。。 おそらく、以下はチェックされていると思うけど、 http://gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/chapter-libglademm.html 複数のwidget idを使っているサンプルは無いですね。。。 Gnome::Glade::Xml::create()して、get_widget()して、 signal処理してrun()する流れは同じだと思うけど、 丁度良いサンプルは見つからないな。。。
222 :名無しさん@そうだ選挙に行こう :2009/08/30(日) 08:51:11 ID:IHJ1WvuS.net >>221 有難うございます。小汚い書き方で何とか表示だけはするようになりました(いろいろ問題が有るけど) 綺麗に書いてあるサンプルなど見ればもう少しましになるかと思ってたのです。 libgladeは使われなくなる方向なんですね。anjutaでデフォルトではく雛型がlibgladeだったので調べてました 今は何を使う方向なんでしょうか?
223 :名無しさん@そうだ選挙に行こう :2009/08/30(日) 10:37:24 ID:Czh9S0PJ.net >>222 > libgladeは使われなくなる方向なんですね。anjutaでデフォルトではく雛型がlibgladeだったので調べてました > 今は何を使う方向なんでしょうか? Glade 3.6.7のglade-3を起動したら、プロジェクトのオプションってダイアログが開く。 そこには、プロジェクトのファイル形式でGtkBuilderとLibgladeを選択できる。 今後は、GtkBuilderがデフォルトになって、ファイル接尾子が.uiになる。 サンプルはgtk-demoのBuilderのソースを見るとわかると思う。 そして、gtkmmのサンプルが無いな〜って話。 http://live.gnome.org/TwoPointTwentyseven/Platform のUpcoming Deprecationsで非推奨になっているものは、消えゆく運命。
224 :名無しさん@そうだ選挙に行こう :2009/08/30(日) 11:08:36 ID:IHJ1WvuS.net >>223 Debianのlennyを使っているのでAnjuta 2.4.2、Glade 3.4.5です・・・ GtkBuilderのサンプル探しの旅に出たいと思います。有り難うございます
225 :login:Penguin :2009/08/31(月) 02:59:20 ID:WV5KE7UC.net glade も GtkBUilder もほとんど同じだから、リファレンスを見ながらで 書けると思うけど。
226 :login:Penguin :2009/08/31(月) 14:47:43 ID:4XJ92u20.net GtkBUilderを使ったGtk::Drawingariaのサンプルを作ろうとしたんだけど 途端に分からず・・・ イベントとかどうやってつなげたらいいのだろう イベント処理で書かないと無理だよね?
227 :login:Penguin :2009/09/01(火) 01:49:35 ID:o0MV2wSR.net とりあえずこんな感じか。 (ちなみに 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 :2009/09/01(火) 01:51:56 ID:o0MV2wSR.net 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 :2009/09/01(火) 01:58:01 ID:o0MV2wSR.net 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 :2009/09/01(火) 02:02:59 ID:o0MV2wSR.net ただの Gtk::Window で悪いけど Gtk::Drawingaria でも大差ないはず。 app_window.glade は GtkBuilder 形式の xml ね。 大体こんな感じが典型的な処理だと思うよ。
231 :login:Penguin :2009/09/01(火) 20:43:11 ID:LcijR9gh.net >>226 > イベントとかどうやってつなげたらいいのだろう > イベント処理で書かないと無理だよね? drawareaをeventboxの上に乗せないとダメじゃなかったっけ? # と、テストもせずにカキコ
232 :login:Penguin :2009/09/01(火) 20:45:43 ID:azH81sw2.net 有難う、私が書いていたのと大分違うみたい 少しずつ見てみるよ
233 :login:Penguin :2009/09/02(水) 01:45:20 ID:XY5vbVWT.net ちなみに AppWindow みたいに Gtk::Widget を継承している場合は、単に class AppWindow : public Gtk::Window { public: virtual void on_show() { cout << "表示された" << endl; } }; みたく仮想関数をオーバーライドするだけでいいんだけどね。 ただ、これもトップレベルのウィンドウのイベントしか反応できないから、 >>229 のコンストラクタみたく cast_static なんかでボタンとか取得して、 自分のメソッドを connect していくのが C++ っぽい書き方な気がする。
234 :login:Penguin :2009/09/02(水) 13:02:19 ID:Wp36mia7.net >>227 コンパイルしてみたけどエラーで落ちてしまったよ m_act_quit = Glib::RefPtr<Gtk::Action>::cast_static(m_builder->get_object("action1")); これってどんな意味かな?
235 :login:Penguin :2009/09/02(水) 18:54:23 ID:Wp36mia7.net 結局こんな感じに書いてつながったけど、何かモヤモヤするよ 複雑になってくると小汚くなりそうだなー 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 :2009/09/02(水) 19:25:12 ID:Wp36mia7.net 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 :2009/09/03(木) 02:34:12 ID:6mgKfH1n.net >>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 :2009/09/03(木) 02:38:43 ID:6mgKfH1n.net >>235 別にそんな小汚くはないと思うけど。大体そんなもんだよ。
239 :login:Penguin :2009/09/03(木) 02:47:30 ID:6mgKfH1n.net >>236 MyDialog は Gtk::DrawingArea を継承してもいいかも。 それと on_* は protected の方がいいよ。
240 :login:Penguin :2009/09/03(木) 12:32:06 ID:jVnTHMiE.net >>234 適当なGtk::WindowのGUIを作って読み込ませたんだけど それがうまく行ってなかったのかもしれない 色々有難う GtkBuilderを使わない方も少しいじってみるよ
241 :login:Penguin :2009/09/06(日) 14:05:15 ID:aXigLrxm.net Gtk::SpinButtonを浮動小数点表示にする事は出きますでようか?
242 :login:Penguin :2009/09/14(月) 13:21:24 ID:kBmevVmP.net cairommでバックバッファを使った描画はどうすれば良いのでしょうか? save(),restore()は少し違うような気がして・・・
243 :login:Penguin :2009/09/15(火) 17:55:42 ID:1BtVuQj7.net GTK+onDirectFBをインストールしようと思ってDirectFBのサイトに行こうとしたら なぜか繋がらないんだけど誰か教えr・・・教えてください。
244 :login:Penguin :2009/09/15(火) 17:56:26 ID:1BtVuQj7.net sageちまった
245 :login:Penguin :2009/09/15(火) 17:59:06 ID:1BtVuQj7.net ttp://www.directfb.org/ URLも貼っておきます。 繋がらない、マジで誰か教えてください
246 :login:Penguin :2009/09/21(月) 16:41:13 ID:X29eYjZv.net GtkGLextmm を使っている人はいますか? 実装具合とか、こっちのライブラリの方が良いよとかありましたら教えて頂きたいのです。 超初心者なのでMesaとかとの違いも分かりませんがGtk繋がりと言うことで宜しくお願いします。
247 :login:Penguin :2009/09/24(木) 10:56:15 ID:hMFgf6/j.net 独自処理のバッテリー残量表示のために Ruby/Gtk2でGtk::StatusIconを使ってみたんですが、 tooltipは付けられても、どうもlabelを付けることができなさそうです。 通知領域にテキストないしはアイコン+テキストを表示したいのですが、 どんなクラスを使えばいいんでしょうか? リファレンスを見た限りではちょっと見当が付きませんでした。 Gdk::Pixbufにテキストを動的に描画するのかな。
248 :login:Penguin :2009/09/24(木) 11:11:57 ID:hMFgf6/j.net http://www.daa.com.au/pipermail/pygtk/2009-June/017120.html http://ruby-gnome2.sourceforge.jp/hiki.cgi?Gdk%3A%3APixbuf どうもそのようですね。でも、もっと簡単にできないもんか……。
249 :login:Penguin :2009/09/25(金) 18:17:32 ID:WaiZYKyV.net >>243-245 DirectFBのソースをDLしようとオフィシャルサイトを開こうとしたけど、まだサーバが落ちたままだね・・・ 9/14頃から落ちてるっぽいからメンテナンスにしては長過ぎだよね。 もしかしてDirectFB終了フラグON?
250 :login:Penguin :2009/09/27(日) 00:08:06 ID:ng4uKqzS.net >>249 今はつながってる。digしたら212.227.87.76だった。
251 :login:Penguin :2009/09/28(月) 02:12:56 ID:5e1BLaTK.net GTK+2.18記念あげ ウィンドウの管理すらGDKで行なうようになり、ちらつきを減少させたり ウィンドウの変形やアニメーションを行なえるようになったり、別の (Clutterのような)描画ライブラリの中に簡単に埋め込めるように なったりしたようだ。 他にも、各プラットフォーム毎に実装していたウィンドウを管理するコード を共通にする事ができるようだ。 WindowsやMacOSXでの動作が改善されたらいいなと。
252 :login:Penguin :2009/10/04(日) 14:16:19 ID:P8VQfdNh.net gtkmmで複数のウィンドウを開くプログラムは作れますか? イメージ的にはGIMPの様なコントロールが有って描画画面が有る感じ gtk+を使えば出来るのかな?
253 :252 :2009/10/05(月) 12:16:45 ID:yVAGOb64.net やり方が分かったの報告(するまでもないのかな・・・) Gtk::Windowを継承したクラスをインシタンス化して hogehoge.show() で表示されました。(バカみたいな話でお恥ずかしい)
254 :login:Penguin :2009/10/07(水) 17:30:55 ID:PMxweG2O.net インシタンス><
255 :login:Penguin :2009/10/11(日) 18:03:35 ID:Sidlsc4E.net Failure to compile 64 bit gtk on mac os http://buffalothedestroyer.blogspot.com/2009/07/blog-post.html >Attempted to install gtk+-2.17.2 on my mac. Had to install: http://www.nabble.com/Gtk-issues-td23803508.html mac 環境だと gtk は使えないんだろうか…?
256 :login:Penguin :2009/10/12(月) 14:47:14 ID:sqmRrC1g.net ググってみたけど使えるっぽいよ
257 :login:Penguin :2009/10/13(火) 21:28:52 ID:l2EymYVQ.net >>255 Leopard だけど、MacPortsからインスコできたよ。 Ruby/GtkとPyGtk用にと。
258 :login:Penguin :2009/10/14(水) 03:07:04 ID:VVFhTsV6.net http://www.amazon.co.jp/ 入門GTK-菅谷保之/dp/4274067769 webの情報をまとめた程度らしいけど gtkmmも扱って欲しかったかな
259 :login:Penguin :2009/10/14(水) 03:31:23 ID:cB0J9abS.net Gtk+2 で初の和書じゃないの。出るだけで価値がある
260 :login:Penguin :2009/10/14(水) 03:43:48 ID:Evvplg3O.net まぁお布施のつもりで買っておくか
261 :login:Penguin :2009/10/14(水) 12:08:22 ID:oK0tjYE+.net Gtk::SpinButtonの値が変更された時に発生するイベントを一時的に停止することは出来ますか? 複数のGtk::SpinButtonが変更されるのが分かっている場合に一時的に停止して 手動でアップデートしたいのです。
262 :login:Penguin :2009/10/14(水) 22:05:50 ID:8MVmnU1X.net >>258 gtk2hsも扱って欲かったwww 買うけどなwwww
263 :login:Penguin :2009/10/14(水) 23:22:20 ID:QhaIdhW6.net QtよりGTK+がイイみたいだぬ、GTK+に決めるぬ
264 :login:Penguin :2009/10/15(木) 00:17:55 ID:K/xBs5bI.net Qtもいいぬ。触ってみてぬ(´・ω・`)
265 :login:Penguin :2009/10/15(木) 03:29:50 ID:eDklkq43.net >>258 そもそも洋書でもgtkmmはないだろ。そんな中で日本語の本なんて奇跡が 起こらない限り無理だろ。
266 :login:Penguin :2009/10/15(木) 13:37:26 ID:pxmDyP/M.net >>258 独創的なな表紙だな
267 :login:Penguin :2009/10/15(木) 23:20:38 ID:eyJUfiVx.net 【恐怖の】呆れるほど危険な民主党の正体【民主党】 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 日米規制改革および競争政策イニシアティブに基づく日本国政府への米国政府要望書 http://japan.u ●sembassy.●gov/j/p/tpj-j2●0041020●-50.html#mineika-s ●の部分は外してブラウザのURLに入れること
268 :login:Penguin :2009/10/16(金) 23:10:15 ID:qPhMCs8o.net >>258 「入門GTK+」 今日、買ってきたよ。 最近は、Web上のホームページのプログラミング解説の方が分かり 易いとうことが多くなってきているようだけど、 「入門GTK+」を サックっと、50ページくらい読んでみたところ この本は、意外に読みやすいし、わかり易い。 他のプログラミングの習得に挫折した人でも何とかいけそうな感じかな。
269 :login:Penguin :2009/10/16(金) 23:12:12 ID:q3/VuRbk.net QtだとQt CreatorとゆうIDEが使いやすいけど、 GTK+使う時はどんなIDE使うと便利ですか。
270 :login:Penguin :2009/10/16(金) 23:26:21 ID:qPhMCs8o.net >>269 「入門GTK+」では、Anjuta(アニュータ)が紹介され解説されているね。
271 :login:Penguin :2009/10/16(金) 23:34:15 ID:qPhMCs8o.net そうそう、時間があったので qt4の解説書も立ち読みしてきたんだけど、今日買った「入門GTK+」 の方がわかり易かった。 誰か、「猿でもわかるqt4」って本、書いてくれないかな〜
272 :login:Penguin :2009/10/16(金) 23:37:35 ID:q3/VuRbk.net GTK+は使ったときないけど、QtもQt Creatorもすごく使いやすいぬ(´・ω・`) GTK+簡単なら使ってみようかしら。
273 :login:Penguin :2009/10/17(土) 14:15:16 ID:XYXybyM0.net >>268 読みやすいのか、ボーナス出たら買おうかな。 >>272 C++使えるならQtだけでいいんでない? おれはCしか知らないからGTK…
274 :login:Penguin :2009/10/17(土) 15:22:41 ID:nWRW4zS0.net そいつム板のwxスレを荒らしてるキチガイだから放置推奨
275 :login:Penguin :2009/10/18(日) 03:51:09 ID:+Fs337jm.net Gtk+の場合はGladeってのがある。もちろん簡単。
276 :login:Penguin :2009/10/18(日) 09:53:27 ID:juku8Oo/.net gladeはもうobsoleteだけどね。今はGtkBuilderを使う
277 :login:Penguin :2009/10/18(日) 09:59:19 ID:oZOJkxHq.net glade自体はまだまだ現役だよ。 ただlibgladeはもうobsoloteだけどね。
278 :login:Penguin :2009/10/18(日) 21:34:36 ID:mlVaod2q.net >>271 ok 究極の友愛本と帯に書いておくよ
279 :login:Penguin :2009/10/21(水) 08:09:56 ID:2ccCLXEP.net あと半年たらずでGTK+3が出るこの時期に出さんでもという気もするが。
280 :login:Penguin :2009/10/21(水) 12:58:05 ID:tvBs0TF8.net >>279 HPに公開していたGTK+の第2版までのドキュメントを著書にしたいという願いと、 出版社側での「最近GTK+の本が出ていないので出したい」と言う思わくが一致して GTK+-2の解説であっても出したんでないの。
281 :login:Penguin :2009/10/21(水) 21:25:41 ID:6UoL2jU0.net GTK+3ってそんなに変わるの?
282 :login:Penguin :2009/10/21(水) 22:08:56 ID:dJLlBo7l.net >>281 うん
283 :login:Penguin :2009/10/22(木) 05:25:32 ID:sG60T9Up.net 3Dデスクトップをデフォルトにする方向性はやめてほしい。 Vista も KDE4 も総スカンだろ? CPUのクロックが頭打ちなんだから、プログラマは節制しないと。
284 :login:Penguin :2009/10/22(木) 06:02:24 ID:IEkHgIHU.net CPUのクロックが頭打ちだからこその3D描画だろ GPUにやらせたほうが描画は速い ※適切な3Dドライバがある場合に限る
285 :login:Penguin :2009/10/22(木) 07:05:43 ID:+CGcKXd7.net オイラは、普段非力なマシンばかり扱っているから3Dをすると重くてかなわん! GTK+3が出ても当分は、GTK+2を使うよ。 「入門GTK+」を参考にすれば、jpgやgifのイメージビュ-ワが簡単に作れるし 動作も軽いからね。
286 :login:Penguin :2009/10/22(木) 09:00:06 ID:hz6htkDb.net 描画は速いかもしれないがメモリ食うんだ
287 :login:Penguin :2009/10/22(木) 18:11:31 ID:oTwQaR0U.net GTK+3は使用メモリ量が減って重くなるの?
288 :285 :2009/10/22(木) 19:41:05 ID:2c91WZnW.net 因みに我が家での、 「入門GTK+」を参考に作ったイメージビュ-ワで 画像 1024x768_16bit_color.jpg(65536色)表示時のメモリ使用量は、 イメージビュ-ワ本体だけの立ち上げ時: 1.25MB 画像1024x768_16bit_color.jpg表示時: 1.25+2.62=3.87MB だった。
289 :login:Penguin :2009/10/22(木) 22:10:41 ID:1jy7wL1R.net Windows だと何十メガとメモリ食うよね。 まあしょうがないんだろうけど。
290 :login:Penguin :2009/10/22(木) 22:42:41 ID:GKZrjVVp.net GTK+3はスルーしてGTK+4まで待つお(´・ω・`)
291 :login:Penguin :2009/10/23(金) 02:29:05 ID:icsRYQ9+.net Gtk+3は現状で限りなく3に近づいているから、そんなに変わらない。
292 :KyPAWlrSIokuKhBa :2009/10/23(金) 22:50:30 ID:gHGN7SxH.net 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 :2009/10/24(土) 00:38:30 ID:9RfZkvGi.net >実のところ,私はKDE-1.0を見て(日本語は通らなかったものの)デスクトップ分野での UNIXの未来を確信し, >GNOME-1.0を見て目の前が真っ暗になった人なのですが(笑) >当時はQtが改変不可だったために,GTK/GNOMEを選択せざるを得なかった. とあるサイトの人のことばなんですが、詳しいことがさっぱりなので、どういう文脈なのかわかりません 誰か解説していただけたら幸いです。もしこれが荒れるような内容でしたらスルーを…
294 :login:Penguin :2009/10/24(土) 01:27:11 ID:BKx301Ml.net 趣旨は脚注でない本文のほうにあると思うが、 GObjectも定着して成長したし、いまは中の人の評価も少しは違うかも。 まぁGtk+はダサい技術だと思う。でもダサいほうが品質高かったりするわけだが
295 :login:Penguin :2009/10/24(土) 01:54:57 ID:Qc2ltt6a.net クラス構造体の中に変数詰めてるとか(VTableとしても使えたなら…)、 G_SIGNAL_ACTIONフラグはただの目印にしかしてない所や、 せっかくGObjectというランタイムタイプシステムこさえてるのに 一部C言語バインディングからしか使えない機能とかあるっぽいところとかGTK+はだせぇなあと思う。 でもGObjectは面白かった。QtのmocやSiGnal/SLOTはいまいちそそられない。
296 :login:Penguin :2009/10/24(土) 04:12:11 ID:wG3ZsfW/.net 今はValaが熱いよ。GObjectが好きな人なら尚更ハマること請け合い。 >>293 まぁ見ての通りだと思うけど、KDE1.0は衝撃的だったな。KDEが出るまでは Linux(BSD)は一部のマニアのおもちゃでしかなかったのが一般にも普及しそう な期待があった。 結局サーバー分野はある程度普及したけど、デスクトップ分野は今も昔も 変わってないけどね。 で、Gnome1.0あんまり記憶がないんだけど見た目はMotifに似ていてダサくて 動作が不安定だった記憶がある。
297 :login:Penguin :2009/10/24(土) 12:25:04 ID:9hbzJrW8.net シグナルとかが補完されるエディタってないかな?
298 :login:Penguin :2009/10/24(土) 13:28:04 ID:KFtS7ScQ.net >>297 gedit + gtksourcecompletion で、、、 http://gtksourcecomple.sourceforge.net/ valaでしか試してないけど、一応動く。
299 :login:Penguin :2009/10/24(土) 19:23:04 ID:wyOmgHI3.net Gnome 1というとSolarisのイメージがあるなあ 大学の標準装備だった。俺は速攻twmにしたが。
300 :login:Penguin :2009/10/29(木) 23:20:42 ID:6yKiv2hH.net これからGTK+を学ぼうと思っています。 主にLinuxで開発するつもりで、AnjutaというIDEを使ってみようと思いますが、 Windowsマシンでたまにコーディングしたいときにはどうしたらいいんでしょ? Windows版ってありますか? Linux板で聞くのは変ですが…。
301 :login:Penguin :2009/10/30(金) 21:38:43 ID:7aJTkb9U.net >>300 ム板にもスレがあることに気づいて そこの過去情報を読んだら解決しました。 お邪魔しました。
302 :login:Penguin :2009/11/01(日) 17:23:59 ID:qpVzDXQL.net 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 :2009/11/01(日) 21:17:41 ID:lntj8SS+.net C++ならQt
304 :login:Penguin :2009/11/01(日) 22:13:27 ID:qpVzDXQL.net >>303 やっぱりGTK+はC++に向いてないということですね。 情報ありがとうございました。 他にも情報があれば皆さんよろしくお願いします。
305 :login:Penguin :2009/11/01(日) 22:14:04 ID:TdugBe1j.net つGLUT
306 :login:Penguin :2009/11/01(日) 23:32:48 ID:o2Fus8Wv.net >>304 gtkmmいいよ。
307 :login:Penguin :2009/11/02(月) 00:05:28 ID:F2TUeYlu.net >>305 GLUTを調べて見ましたが、OpenGLのやつなんですね。 3Dにはあまり興味が無いですが、今後必要になったとき使ってみます。 情報ありがとうございました。 >>306 GTK+はC++との親和性が少し低いけど、gtkmmはC++用で問題ないということですね。 試してみます。 ありがとうございました!
308 :login:Penguin :2009/11/03(火) 01:21:46 ID:Vebc7itB.net rubyでgtkプログラムをしたいんですけど、何かいい開発環境はないですか? gladeとかでみためは作って変換できるのですが、中で実行するシグナル(っていうんですかね)がどういう感じで使えるかというのがわからないので 調べ調べになってしまいます。通常使ってるのはemacsとnetbeansです。これに似た、もしくはその上で動かせるものはありませんか? 補完とかできたらうれしいのですが。
309 :login:Penguin :2009/11/03(火) 19:55:27 ID:0PVkcWZ9.net 逆に「gladeとかでみためは作って変換できる」の部分を 詳しく教えてほしい。
310 :login:Penguin :2009/11/03(火) 20:05:58 ID:DNzdCjrE.net gtk-builder-convertのことかな?
311 :login:Penguin :2009/11/03(火) 22:30:31 ID:1H0HUjWH.net ruby-glade-create-template とかあったよな.
312 :login:Penguin :2009/11/04(水) 08:03:24 ID:03fE0NL7.net クラスライブラリのリファレンス(英語)なら公式サイトでrbbrっていうサンプルアプリとして 置いてあるけど、そういうことじゃないのかな?
313 :308 :2009/11/05(木) 02:27:28 ID:Cf0Et12U.net >>309-311 311さんが言ってるみたいにruby-glade-create-templateで作ったgladeファイルを.rbに変換して オブジェクトは作ったからメソッド書いて自分の思うような動きを作ってちょうだいな。みたいなところまではできます。 しかし、rbファイルを編集するときにrequire 'gtk2'をよんでいるのにemacsでもnetbeansでも補完してくれませんでした。 >>312 rbbrは使ってるOSにパッケージがあったのでそれを入れてみましたが。リファレンスを引けるようになりました! リファレンスが引けると言うことは補完もできるのでは?と今悩んでいる状態です。
314 :309 :2009/11/06(金) 12:34:31 ID:pFNFtZEf.net >>310 >>311 >>313 サンクスです。ググったら Ruby/Gtk2のチュートリアルに書いてあるね 規制でタイミング逸して返事書かなくてすまん
315 :308 :2009/11/06(金) 17:32:52 ID:1VLamOE6.net >>309 さんはどんな感じでコードかいてますか? リファレンス見ながらかいている感じですか?
316 :login:Penguin :2009/11/07(土) 07:20:09 ID:PbDi/n2M.net >>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 :2009/11/07(土) 07:40:28 ID:h9ilEYN9.net Lazarus とか。
318 :login:Penguin :2009/11/07(土) 07:53:25 ID:wJdSUuBx.net gtkmmを薦めてるのがいるが真に受けんように C++でまともに動いたら、scim-bridgeみたいなモノを作る羽目にはならん
319 :login:Penguin :2009/11/07(土) 11:52:06 ID:CPjNRklA.net 面白いのはわかるが、今更そんなんやったって・・・ 激しくつまらんけど、これからはAIRですよ
320 :login:Penguin :2009/11/07(土) 13:30:53 ID:pZqg2eyF.net いや、これからはJavaですよ 作ってて面白いしね
321 :309 :2009/11/07(土) 15:04:13 ID:pqmmO2Ng.net >>315 そうだね。 オンラインリファレンスを地味に検索しながら emacsのruby-modeで書いてるよ。 methodsとかのメソッドで確認したりするぐらい。 emacsで構文解析してメンバ関数だのメソッドを補完する環境って無いんじゃないかな。 無作為に辞書から補完するのはあるかもしれんけど。 netbeansはよく知らない。 Ubuntuだと「追加と削除」からリRuby Browserというリファレンスビュワーが落とせるよね。 これはRuby/Gtk2のクラスも見られたと思う。
322 :login:Penguin :2009/11/07(土) 19:56:24 ID:nXIVDau4.net 型がなんでgintやgcharなの? intやcharではダメなわけ? C言語とのこういうちょっとした違いは 他にもいろいろあるの?
323 :login:Penguin :2009/11/07(土) 20:43:43 ID:P9pTNgo8.net > 型がなんでgintやgcharなの? 移植しやすくする為の措置じゃなかったっけか
324 :login:Penguin :2009/11/07(土) 21:04:17 ID:nXIVDau4.net 「g」が付いてるほうが移植性が高いのかねぇ。 みんなはそういうのをどうやって覚えたの? 解説本とかあまり売ってないみたいだけど…。
325 :login:Penguin :2009/11/07(土) 21:25:19 ID:NL8bJnRF.net >>nXIVDau4 たとえばlongが64bitの環境でも、glong的に32bitであってほしい場合にlongの代わりにintやint32をtypedefするとかな。 データ構造の隠ぺいとかはWeb上の先人の残した情報だったり、技術書立ち読みだったり、Win32やNSPRとか同じことやってる実例を見たりとかで知ったよ。
326 :login:Penguin :2009/11/07(土) 22:58:20 ID:FPX1oLqZ.net >>324 C言語はintとかの定義に幅があるから コンパイラが違えばintのサイズも異なったりするので 厳密に定義した独自のintを用意するわけですよ 先月出た本はどうでしょう http://www.amazon.co.jp/dp/4274067769
327 :login:Penguin :2009/11/07(土) 23:54:07 ID:Iq2jGS9i.net gint32、とかにした方が判りやすいのに
328 :login:Penguin :2009/11/08(日) 03:02:52 ID:A1QtHV1W.net >>325-326 なるほど、なんとなくわかった。 ありがと。チュ! 本は今度本屋で見てみる。
329 :login:Penguin :2009/11/08(日) 22:19:03 ID:A1QtHV1W.net GTK+をこれからやろうと思ってますが、C++よりC言語のほうがいいんでしょうか? 昔CもC++も少しずつかじりましたが、どっちも中途半端に終わって、今は頭の中でゴッチャになってます。 GTK+を始めるこの機会にどちらかをちゃんと勉強するつもりですが、どっちがいいか迷ってます。 CよりC++のほうが言語として優れていたり、C++を覚えたほうが何か有利だったりするんですかねぇ? gtkmmというのを使えばC++でもいけるんですよね? 何かアドバイスをもらえればうれしいです。
330 :login:Penguin :2009/11/08(日) 22:48:08 ID:iZONJSh7.net >>329 有利かどうかでいえば、一山いくらのプログラマとしても仕事に付けるかという観点ではC++/Java/PHP/VBあたりだろうな。 有利不利なんぞを気にするんなら間違ってもWindowsかWebアプリ、携帯以外見向きもしないほうがいい。GTK+なんかもってのほかだ。 マジレスするなら、C++にあまり慣れてないならCでGTK+やるのがいい。 ついでにPythonあたりも齧っとけばC+GTK+で面倒な部分もこなせるし、Linux方面のプログラムを開発するのに不自由はしないだろう。
331 :login:Penguin :2009/11/08(日) 23:24:58 ID:3wmSljPh.net >>329 Cはスーパーマクロアセンブラ、C++になって高級言語の仲間入りっつー感じかな。 ある程度規模の大きなプログラム作るんなら、絶対C++の方が有利。 Cははっきり言って時代遅れ。C++は習得しておいた方がいいよ。 組み込み系なんかだと、また話は変わってくると思うが。 GUIツールキットだって、殆どのものがC++を念頭に置いて作られてる。 Cが標準でC++ラッパーを後付けしたのはGTK+くらいなもの。 まぁ、それだけ歴史が古く、練り上げられてるとも言えると思うけど。
332 :login:Penguin :2009/11/09(月) 00:10:55 ID:xrkj026G.net >>330-331 どうも! 「C++に慣れてないなら」っていうのはオブジェクト指向が壁になるかもしれないってことですかねぇ。 一応JavaやPHPもちょこちょこやってるので、理解はしてます。 お二人の意見を合わせると、C++のほうがいいけど、慣れてなかったり自信がなかったりする場合は Cにしておくのが無難ってとこですね。 もうちょっと考えてみます。 とても参考になりましたー!
333 :login:Penguin :2009/11/09(月) 00:31:21 ID:GPAwpvGp.net >>332 オブジェクト指向が壁になるからではないよ。ほぼ1からC++とGTK+(とgtkmmの固有事情)やるよりはCとGTK+のほうが楽かなとね。 一応gtkmm以外にもJavaとPHP向けのバインディングがあるから、Cでやるのが面倒なようならそれぞれJava-Gnome/PHP-GTKで調べてみるといい。
334 :login:Penguin :2009/11/09(月) 01:09:23 ID:GiNGaxO1.net gtkmmの固有事情くわしく これから始めようと思ってるんだけど >>132 , >>318 とか見ると気になる
335 :329 :2009/11/09(月) 01:13:18 ID:xrkj026G.net >>333 Cのほうがやっぱ楽なんですか。 といいつつC++も捨てがたいけど、>>334 さんと同じくgtkmmの固有事情が気になります。 JavaやPHPのやつも存在は知ってましたが、CかC++でアプリを作れるようになりたいなぁと思ってて…。
336 :login:Penguin :2009/11/09(月) 01:49:16 ID:9bGbNsmw.net >>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 :2009/11/09(月) 09:55:18 ID:H/aMIY+I.net わざわざPerlで扱ってる変態もいるしな
338 :login:Penguin :2009/11/09(月) 10:14:55 ID:LeSNQMah.net >>335 俺は Python でやってる。 C を使っている gtk+ プロジェクトだったら C で書く。 そんなに違いはないし、簡単。 Cだとヘッダーにいちいちプロトタイプ宣言しなければならなかったり 毎回コンパイルしなければならないのが面倒だからPython使ってる。 楽チン。
339 :login:Penguin :2009/11/09(月) 15:19:07 ID:dkYv1Xb9.net >>337 ぇー最近perlでGTK触りはじめたけど、変態じゃないやい><
340 :login:Penguin :2009/11/09(月) 15:40:43 ID:nWvFWYHF.net とにかく完成するのが目的なら自分の好きな言語でいいじゃん。おれはRubyだぜ。
341 :login:Penguin :2009/11/09(月) 18:21:40 ID:EMO5BJHN.net GTK+はバインディングが多いのがいいよね
342 :login:Penguin :2009/11/16(月) 16:13:58 ID:VCRzBqJE.net なんだかんだ言って、Cのコードは寿命が長いんだよね。 コストベーシスで考えると、GTK+の場合は全てCで書いた方が いいと思う。他のメジャーなソフトはほとんどCだし、 インテグレーションもし易いよね。
343 :login:Penguin :2009/11/16(月) 17:18:31 ID:gFc8JNPu.net Cは初心者向けの本を昔読んで、当時はなんだか難しいなぁって思ったけど、 GTK+に挑戦したくてもう一度読んでみたら大して難しくなかった。 配列、関数、ポインタ、構造体の使い方の基礎がわかってたらGTK+を扱える? この程度の知識で始めるのはなんか怖くて・・・。
344 :login:Penguin :2009/11/16(月) 17:21:51 ID:VCRzBqJE.net GTK+なら、型が決まっているから、 ほんとに基本的な知識だけで十分だと思う。 マクロやプリプロセッサもよく使われているけど、 非常にシンプルなコンセプトだし、問題ないとおもう。
345 :login:Penguin :2009/11/16(月) 20:35:58 ID:gFc8JNPu.net >>344 どうも! 今年中に始めよーっと!!
346 :login:Penguin :2009/11/16(月) 21:19:38 ID:tJXAF2DJ.net もう「今年中」とかいうセリフが聞かれる時期になったか。
347 :犬山ぽち丸 :2009/11/19(木) 00:11:09 ID:CpUTPEU6.net Perl でこんな感じのを書いてみました。 ttp://pochimaru.seesaa.net/article/132639898.html 次ページ移動ボタンをクリックする事で次ページを表示したいのですが、 このままでは期待するように動きません。 現時点の表示をクリアして次ページを表示するにはどうしたらいいのでしょうか?
348 :login:Penguin :2009/11/19(木) 05:10:52 ID:kHCd9OdN.net # perlって聞いた時点で見る気なくした
349 :login:Penguin :2009/11/20(金) 14:06:49 ID:TNyOV+9k.net DrawingAreaをAspectFrameで包むと上下左右に、 GNOMEでは1ピクセル、 Fluxboxでは2ピクセル隙間が開くんだが、なんとかならないものか
350 :349 :2009/11/20(金) 14:52:09 ID:TNyOV+9k.net set_border_width(0)でもだめだった python-gtk2 2.16.0 python-glade2 2.16.0 gtk 2.18
351 :login:Penguin :2009/11/21(土) 12:33:26 ID:cf2l5sy0.net gtk2.18.3をubuntu9.10でやっているんですが キーを押し続けている状態を知る事はできないんでしょうか? 今はkey-press-eventとkey-release-eventシグナルを使っているんですが キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて 押し続けている状態を知る事ができません。
352 :login:Penguin :2009/11/21(土) 15:35:08 ID:zEcsEEOn.net key-pressのあとにkey-releaseがなければ押し続けていることになる
353 :login:Penguin :2009/11/22(日) 01:06:56 ID:EckaNW4z.net >キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて 押しつづけているのにrelease-eventがくるとかキーボードぶっこわれてるんじゃね
354 :login:Penguin :2009/11/22(日) 08:57:13 ID:OlBHF5u9.net >>351 Xのレベルではそれが通常の動作(モディファイアキー(の一部)以外では)。 Xはautorepeat時にKeyReleaseと続くKeyPressでタイムスタンプを同一にして 送ってくるので、GDKはそれを利用して>>352 のように見せるコードが 一応入ってはいる、が、環境や同時に利用するプログラムといった条件によっては それが働かないみたい。 自分の環境だけ考えるならGDKの該当部分に手を入れて常にその動作をするように してしまうのが簡単。そうでないならやはり同様に次のイベント (gdk_event_peekで得るのかな)とそのタイムスタンプを見て判断するんじゃないかと。
355 :login:Penguin :2009/11/22(日) 11:40:29 ID:xNfLAKy+.net >>352 >>353 >>354 レスありがとうございます。 gdk_event_peekはnullが返ってきたのでダメでしたが gdk_event_getはタイムスタンプ同一のメッセージがしっかり返ってきました。 おかげさまで上手くいけそうです。
356 :login:Penguin :2009/11/22(日) 22:53:53 ID:LzN5AhP5.net >>347 こんな感じでどうでしょう? 163a165,168 > my $currentObject = $scrolled_window->child; > if($currentObject) { > $currentObject->destroy; > } 204a210 > $drawable->show; 224a231 >
357 :犬山ぽち丸 :2009/11/26(木) 19:27:51 ID:bDLkSh53.net >>356 動かしたいように動かす事が出来ました、ありがとうございます。 とても基本的なところで躓いてしまってたみたいで、お恥ずかしい限りです。
358 :login:Penguin :2009/11/27(金) 20:56:42 ID:w3OKtepz.net GtkWidget ↑ ↑ GとWが大文字 これに気付くのに4日掛かった コンパイルが通って空のウィンドウが表示されたときは 雄叫び上げちゃったよ。
359 :login:Penguin :2009/11/27(金) 21:30:47 ID:RzRcFxle.net www とりあえず、なんだ、おめでとう
360 :login:Penguin :2009/11/27(金) 21:51:12 ID:HBGtWPJy.net Debianスレで GTK+ でウィンドウ出すのに四日かかったって言ってた人かw
361 :login:Penguin :2009/11/29(日) 00:46:08 ID:guffPLRY.net おめでとう、マジで さぁ早くシグナルをコネクトしまくる作業に戻るんだ
362 :login:Penguin :2009/12/01(火) 22:14:30 ID:sy3qzyYB.net >>361 ぬるぽっ!
363 :login:Penguin :2009/12/01(火) 22:23:34 ID:xoJE4V4A.net >>362 ガッ って言ってほしいのね。 もぉ、寂しがり屋さんなんだからぁ。
364 :login:Penguin :2009/12/05(土) 20:49:17 ID:CO55p0ew.net なんでこのスレ過疎ってんの? プログラマー不在のスレなの?
365 :login:Penguin :2009/12/05(土) 21:08:39 ID:Gmpm8vF/.net >>364 そう思うならまず率先して何かを作って公開してみては如何でしょうか?
366 :login:Penguin :2009/12/06(日) 00:50:56 ID:fNpRY7Ok.net 話題がないだけでしょ。
367 :login:Penguin :2009/12/07(月) 17:19:37 ID:CENTWTgC.net 良くも悪くも枯れてるからな
368 :login:Penguin :2009/12/07(月) 20:01:28 ID:LkAo4E7O.net gtk2hsで書いてみたけど思ったより使いやすかった
369 :login:Penguin :2009/12/13(日) 11:19:39 ID:naHBDIjP.net gtkで外部装置から受信した温度データをグラフ描画するソフトつくってる。 左3/4が描画領域で残りに現在時刻や表示倍率の設定がある。 連続してデータ受信すると、時刻表示のタイマーがとまったり、倍率設定 のコンボボックスが操作できなくなるので、スレッド分けしようと思うのだけど expose_eventを別スレッドにすることって可能?
370 :login:Penguin :2009/12/13(日) 11:42:32 ID:P93DdDFa.net できそうな気がするけど。 とりあえずやってみたら?
371 :login:Penguin :2009/12/16(水) 20:46:38 ID:laS/Dg3j.net >>365 作る気になれるようなことが必要なのではないですか。
372 :login:Penguin :2009/12/16(水) 20:51:22 ID:dPFj9y5E.net >>369 すごいですね 勉強のためにぜひソースを見せて頂けないでしょうか?
373 :login:Penguin :2009/12/16(水) 20:53:19 ID:dPFj9y5E.net もしくは、ソースリストを公開しているwebページを ご存知でしたら教えてください。
374 :login:Penguin :2009/12/16(水) 20:54:06 ID:6soPE05o.net ∧__∧ (´・ω・) いやどす ハ∨/^ヽ ノ::[三ノ :.、 i)、_;|*く; ノ |!: ::.".T~ ハ、___| """~""""""~"""~"""~"
375 :login:Penguin :2009/12/16(水) 21:47:42 ID:c63j0iz9.net 受信を別スレッドでやるのが普通じゃないの
376 :login:Penguin :2009/12/16(水) 22:44:30 ID:Q8cS+VLW.net ブロックする可能性のある処理は別スレッドにしないと止まる
377 :login:Penguin :2009/12/16(水) 23:39:53 ID:jaaomSx0.net Exposeを別スレッドって、ぷっ。 さすがLinux。
378 :login:Penguin :2009/12/17(木) 02:29:15 ID:F8Jdsro2.net 何がおかしいのかよくわからん。
379 :login:Penguin :2009/12/26(土) 01:54:27 ID:XiSC9KS7.net GTK+の本を買おうと思うんですけど、この2冊だとどちらがいいですか? ・入門GTK+ ・Foundations of GTK+ Development プログラミングはCの基礎がわかっている程度です。 PHPもやってます。
380 :login:Penguin :2009/12/26(土) 13:18:25 ID:6MLS1ve1.net 両方買えばいいじゃない。 あと、入門GTK+の方は作者がホームページで 本の内容を公開し始めてる
381 :login:Penguin :2009/12/26(土) 14:29:39 ID:YM2nDrzN.net Foundations of GTK+ Development は一部 google books にでてる
382 :379 :2009/12/27(日) 00:54:04 ID:HfaPMpb7.net >>380 両方買うと、結局一冊は読まないままになったりするタイプなので…。 あと、書籍代はケチるべきじゃないと思いますが、深刻な金欠状態なのです。 入門GTK+の作者サイトでの公開について、情報ありがとうございます。 休暇中に目を通してみようと思います。 >>381 Amazon USのレビューで「ネット上で読める」と書いてあったので、どこにあるのか気になってました。 書店になくて立ち読みできなかったので、Google Booksで読んで判断します。 どうもありがとうございました。
383 :login:Penguin :2009/12/27(日) 08:12:49 ID:Ri5kV8GM.net GTK+は公式チュートリアルが結構充実している方だと思うので、 それ読めばとりあえずリファレンスとサンプル眺めつつ使えるようになる。 それでも本が欲しくなるならあるウィジェットの使い方を 詳しく書いていて欲しいだとかマルチスレッドとの兼ね合いが 知りたいだとか(あまりいい例が出てこなくてすまん) 求めるものがはっきりしてくると思うので、 それから本を選んでもいいんじゃないだろうか。
384 :379 :2009/12/27(日) 20:27:25 ID:HfaPMpb7.net >>383 公式チュートリアルのことを知りませんでした…。 ダウンロードできたので、スマートフォン等にコピーして移動中でも読めそうです! プリントアウトして持ち歩くのもいいかもしれません。 最終更新日が2002年10月27日と古いんですけど、問題ないですよね? 書籍を買ったほうが最後まで読みつづけようという意欲が持てる気がしますが、 とりあえず公式チュートリアルを読もうと思います。 ちなみに「Foundations of GTK+ Development」はGoogle Booksで見てみたら とても良さそうでした。 「入門GTK+」のほうは著者ページで見つからなかったです・・。
385 :login:Penguin :2009/12/28(月) 02:58:56 ID:CtQUEG8Y.net > 最終更新日が2002年10月27日と古いんですけど、問題ないですよね? ……? 公式チュートリアルは http://www.gtk.org/documentation.html でズバリ The Official Tutorial といってる http://library.gnome.org/devel/gtk-tutorial/stable/ だよ。 GTK+のソースコードのtarball中にも入ってる(docs/tutorial/以下)。
386 :login:Penguin :2009/12/28(月) 07:38:54 ID:RlHoBGgo.net >>385 Tutorial Availabilityのページにあるリンク(ftp://ftp.gtk.org/pub/gtk/tutorial )から ダウンロードしました。
387 :login:Penguin :2009/12/28(月) 11:47:38 ID:T0tfWrHc.net 自分でいいと思ったならそれ読め。もう知らん。
388 :login:Penguin :2009/12/28(月) 22:21:50 ID:Uh78zlUy.net そう言うな。明日になればまたみんな仲良しななしさん
389 :login:Penguin :2009/12/28(月) 22:55:34 ID:AK9LsQvN.net >>387 何?どうしたの?
390 :login:Penguin :2010/01/09(土) 18:48:59 ID:khh4I0eb.net 今日からGTK+を始めてみた 今までwindowsのvisual stdioしか使ったことなかったから、パスさえ通ってりゃ #g++ hello.cpp だけでコンパイルをやってくれると思っていた 今日一日かかって`pkg-config --cflags --libs gtk+-2.0`を知って ウィンドウを出せた 疲れた
391 :login:Penguin :2010/01/10(日) 13:16:43 ID:3oa4ldyN.net VisualStudioだってオプションからディレクトリの設定しなきゃ ビルドすらままならないだろうに、何言ってんだコイツ ましてやコマンドラインからCL.exe呼び出すんなら、vcvarsall.batなり vcvarsall.batで設定される環境変数群を、予めユーザー環境変数に定義して おかなければCL.exeもg++と同じエラー吐いて止まるだろうに・・・
392 :login:Penguin :2010/01/10(日) 14:58:37 ID:zlmG+3hJ.net pixmapの背景色を黒くしたキャンバスを作って その上に画像と文字を描画してて、文字は白 これに対してニコ動のコメント表示/非表示みたいなことをやりたい 文字を描画するときのみXORモードで書いてるんだけど 背景の黒の上に書かれた物は消えるけど、画像の上に書かれた 物は黒抜き去れて残ってしまう 説明わかりにくいかも知れないけど、なんか良い方法無いかな
393 :login:Penguin :2010/01/13(水) 03:10:04 ID:hKXsU3qa.net 文字を描画しないだけでいいんじゃないの?
394 :login:Penguin :2010/01/13(水) 13:45:44 ID:rT8A3kXe.net >>390 チュートリアルとか見てないの?
395 :login:Penguin :2010/01/14(木) 01:41:29 ID:2htHqmwQ.net 空気の福田はともかく、徳井が苦手でねぇ…
396 :login:Penguin :2010/01/15(金) 10:31:57 ID:2tKD4R7l.net GTK+を使って記述されているソフトとしては gimp以外だとどんなものがありますか? ソースリストを読んで勉強したいのですが
397 :login:Penguin :2010/01/15(金) 11:34:43 ID:+6ILVUJ5.net >>396 http://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 http://www.gtk.org/screenshots.html
398 :login:Penguin :2010/01/16(土) 13:06:47 ID:st13uJnk.net 2chブラウザのJDとか、画像ヴューアのgqviewとか。
399 :login:Penguin :2010/01/23(土) 07:49:03 ID:c81zxfOz.net ツールバーにウィンドを表示しないようにするにはどうすればいいの?
400 :login:Penguin :2010/01/26(火) 09:24:59 ID:WUy9SOAf.net 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 :2010/01/26(火) 11:26:21 ID:TXiGdVqu.net チュートリアルどおりやれば躓かないとおもうんだけどな 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.net >> 401 遅くなりましてすいません。返信ありがとうございます。 うまくいきました。 ウィンドウが表示されたとき、感動しました。 でも、emacs からはコンパイルできませんでしたので、リンカーあたりの 設定かな?と思っています。 何はともあれ、ありがとうございました。
403 :login:Penguin :2010/01/26(火) 16:57:00 ID:R1nywYDP.net またまたお願いいたします。 linuxにおいて、 windowsの SetCursorPos() GetCursorPos() に相当するものはありますか? 参考リファレンスなど紹介してもらえれば助かります。
404 :login:Penguin :2010/01/26(火) 17:26:41 ID:Up0ueX3p.net >>403 ttp://library.gnome.org/devel/gtk-tutorial/stable/
405 :login:Penguin :2010/01/26(火) 18:04:33 ID:R1nywYDP.net >>404 返信ありがとうございます。 ...勉強します。
406 :login:Penguin :2010/01/26(火) 18:11:45 ID:OKgnAGh0.net >>402 pkg-configコマンドが何なのか調べるんだ。
407 :login:Penguin :2010/01/28(木) 14:40:04 ID:YXchBGq5.net はじめまして。GTK初心者です。 困っていることがあります。 gtk_init()でハングするんです。 1. gtk_init()を手動でコール出来るようプログラミングし、rc.localでそのプログラムを起動。 2. xwindow(gnome)ログイン後にgtk_init()をコールさせる。 上記の2の時点でgtk_init()でハングしているらしいです。 (gtk_init()下行のログが出力されない) 原因や対処法をご存知の方いらっしゃいませんか?
408 :login:Penguin :2010/01/28(木) 18:04:22 ID:VFHNmy96.net >>407 突っ込みどころが3点ほど。 ・rc.localに登録して起動し、さらにログインした後にも起動・・・? ・gtk_init()だけ実行するプログラムを作ったの? だとしたら壮大な勘違いをしている。gtk_init()関数が何をする関数なのか調べるんだ。 ・「ログ」とは何のログ?ハングしているらしい、では分からないのでソースをUPするんだ。
409 :login:Penguin :2010/01/28(木) 18:34:10 ID:YXchBGq5.net >>408 ありがとうございます。すみません、説明不足でした。 ちょっとソースは長いので文書のみで失礼します。 プログラムは、rc.localで起動した時点ではgtk_init()をコールしない作りにしてます。 その後、ログイン後にコンソールから別プログラムを通してプロセス間通信によりコマンドを送信、 そしてコマンドを受信した時点で gtk_init()をコールさせる形にしてました。 ログは、 printf("call gtk_init\n"); gtk_init(); printf("call end\n"); ★ のようにして、★が出力されない感じです。 その後の調査で、どうやら rc.local起動させた場合、環境変数 DISPLAYなどが 全く設定されていないようです。 そこら辺に問題有りかと思っているのですが、なにぶん、勉強不足でして。 時間も無いので質問させて貰った次第です。
410 :login:Penguin :2010/01/28(木) 18:40:22 ID:A3FmJC2O.net DISPLAYも何も、Xの起動はrc.localより後なんだぜ? プログラム分けるんじゃ駄目なんかい
411 :login:Penguin :2010/01/28(木) 18:44:27 ID:0EFvnz24.net 時間も無いので 時間も無いので 時間も無いので 時間も無いので 時間も無いので
412 :login:Penguin :2010/01/28(木) 19:24:50 ID:bFXQct0B.net >>409 「GTK初心者」と言うよりLinux&プログラミング初心者のようですね。 貴方にGTKはまだ早いです。環境変数やXの基本が理解できていないと 説明されても分からないと思いますので出直してきて下さい。
413 :login:Penguin :2010/01/28(木) 19:30:37 ID:uG/wS28i.net お金も無いよ お金も無いよ お金も無いよ
414 :login:Penguin :2010/01/28(木) 19:32:04 ID:YXchBGq5.net >>410 ありがとうございます。 inittabで初期化レベルを分けていることもあり、 てっきりrc.local前に起動処理が走っているかと勘違いしていました。 お恥ずかしい。 >>412 おっしゃるとおりです。 出直してきます。
415 :login:Penguin :2010/01/28(木) 21:55:00 ID:WU2RMXov.net >>414 DISPLAYが設定されてなくて、Widget使わないなら、 GObject関係を使うためだけなら、g_type_init ()すれば良いよ。 有名なエラーが出るからgtk_init()使ったってエスパーしてみた。
416 :login:Penguin :2010/02/07(日) 16:35:02 ID:jjKybwb6.net 書籍「入門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 :2010/02/07(日) 17:08:07 ID:KhA+E7Mu.net エラーメッセージを読んでみましょう acitonsが宣言されていませんよ actionsと間違えていませんか?
418 :login:Penguin :2010/02/07(日) 17:18:05 ID:jjKybwb6.net >417さん ごめんなさい、本当に気づきませんでした。エラー文を読んでいたのに…ありがとうございました
419 :login:Penguin :2010/02/09(火) 01:35:25 ID:gRID6Pu9.net ググれ秀才
420 :login:Penguin :2010/02/10(水) 20:29:31 ID:y7MwWf/g.net gtkmmをこれからやってみようと思ってるけど、 入門GTK+を読みながらC言語で練習するより 最初からgtkmmでC++使ったほうがいい? gtkmmの入門書がないみたいなので、 取っかかりとして入門GTK+を候補にしてるんだけど…。
421 :login:Penguin :2010/02/11(木) 13:48:24 ID:AIMyey0J.net >>420 最終的にC++で書くのが目的なら、↓みたいなところがあるからC++で書けばいいんじゃない。 gtkまわりの日本語の情報が少ないから、言語は違うけどたまに参考にさせてもらってるよ。 http://book.geocities.jp/gtkmm_ja/docs/tutorial/html/index.html
422 :login:Penguin :2010/02/12(金) 15:44:26 ID:DJstgHYM.net >>421 そのサイト見てみます。 ありがとう。
423 :login:Penguin :2010/02/17(水) 19:33:47 ID:Ozbv3EUx.net 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 :2010/02/17(水) 19:42:41 ID:TkV44uU+.net 1.2のランタイムぐらい入っててもいんでない?
425 :login:Penguin :2010/02/21(日) 14:06:19 ID:pTXZtDIq.net ちょっと自前で描画しようとすると、gdkとcairoが混在していて 煩雑としてるなぁ。 少なくともGDKの描画関連のAPIはもういらないだろう。 3.0辺りでばっさり消すとかしてもいいんじゃないか。
426 :login:Penguin :2010/03/11(木) 00:46:30 ID:Vm2wsjJM.net 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.net Gtk::Dialogの派生クラスを作成してある条件の時表示させています。 表示後一定期間経過したら自動的にそのダイアログを閉じたいのですが、 どうすればいいのでしょうか。 特にダイアログにこだわっているわけではありません。 何かメッセージを表示 -> 一定時間後に自動的に消去 が実現できればいいです。 よろしくお願いします。
428 :login:Penguin :2010/03/12(金) 19:39:46 ID:37m6gC+E.net >>427 g_timeout_add関数ではだめでしょうか?
429 :login:Penguin :2010/03/12(金) 19:41:48 ID:WSSuZVVD.net >>428 そこはらめぇーーーー
430 :login:Penguin :2010/03/16(火) 23:40:15 ID:u16nCOLZ.net gtk_widget_drawを呼ぶとたまにアプリが落ちる 調べたらgtk2では非推奨になってた かわりにgdk_window_invalidate_rect使えって書いてあったから それ使うようにしたら、exposeイベントハンドラに入ったり入らなかったりするようになった
431 :login:Penguin :2010/03/19(金) 03:10:05 ID:pTXFbkuH.net Xawで作られたソフトのWidgetをGnomeテーマのスキンっぽく 変える方法ってありますか?Xaw3dみたいな
432 :login:Penguin :2010/03/22(月) 18:34:33 ID:gITq0f63.net >>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.net あるデータファイルをどんどん読んで処理しながら、1秒に1回その途中経過を Windowに表示する、みたいなプログラムを書こうとしています。 Windowに表示する部分は、gtk_main()を呼ぶ前に、g_timeout_add(1000, draw, NULL) のようにしてタイムアウト関数を使えばいいとして、データファイルを読み込んで 処理する部分は、どこに書けばいいのでしょうか? スレッドとかを使わずにやりたいのですが。
434 :login:Penguin :2010/05/01(土) 18:51:28 ID:lTmE6Ym2.net g_io_add_watchとか?
435 :login:Penguin :2010/05/01(土) 21:52:51 ID:5eA3cNHe.net LinuxでGTK+やってる人はWindowsでも主にGTK+で書いてる? WindowsのAPIは使いませんって人いるのかな。
436 :login:Penguin :2010/05/02(日) 00:32:37 ID:Bdebw0Wa.net そもそもWindows使いません。
437 :login:Penguin :2010/05/02(日) 06:00:37 ID:J+HCMgwe.net >>433 スレッドを使わない方がめんどくさいと思うんだけどね。 ずーっと処理し続けて一秒に一回描画するって事だと その処理の間は入力受け付け無くてもOK? その為のスレッドなんだけどなぁ。 シングルCPUでもそう言うことが出来るのがスレッドの良いところ。 それでもスレッドを使いたくないというなら、こまめにシグナル飛ばしっこ するしかないと思う。
438 :login:Penguin :2010/05/02(日) 21:48:38 ID:uNQYZGNa.net 簡単なシミュレーション用のGUIラッパ作りたんですが、 Qt4とgtkmmどっちが作るの楽ですか? どっちもバグてんこ盛りそうで、javaやM$畑に生まれたかった
439 :login:Penguin :2010/05/02(日) 22:14:42 ID:WSA7U0rv.net >>438 マジでバグテンコ盛りだからいまからでも上にJava+Swingあたりでやらせてくれって掛け合ったほうがいい。 ちゃんと上にQtもGTK+もバグテンコ盛り過ぎてプロダクションレベルに使えないって直訴するんだぞ。
440 :login:Penguin :2010/05/04(火) 08:25:25 ID:i62yYai1.net >>438 vala とかどうか。バグが多いかどうかはプラットフォームに よる部分も多いと感じるが…win ならC#で組むのが楽だとは思う。
441 :login:Penguin :2010/05/04(火) 09:52:32 ID:gZYcN+Ue.net >> 439 使いこなせていないだけじゃないの。
442 :login:Penguin :2010/05/04(火) 21:20:07 ID:C0XJN+7X.net なんでこのスレ、ム板じゃないの? SDLとかはちゃんとム板でやってるのに なんでGTKはのけ者なの? いじめに合うの?
443 :login:Penguin :2010/05/04(火) 21:28:25 ID:9ORU/lJS.net Gtkプログラミング on Windows!!! ってスレがム板にあるけど? http://pc12.2ch.net/test/read.cgi/tech/1147024203/
444 :login:Penguin :2010/05/04(火) 21:36:12 ID:C0XJN+7X.net 窓専用じゃん。
445 :login:Penguin :2010/05/04(火) 21:47:13 ID:9ORU/lJS.net 自分で立てればいいぢやん
446 :login:Penguin :2010/05/05(水) 17:49:24 ID:NLGDqQjm.net まぁええやんここにも有っても どうせ両方見てるし
447 :login:Penguin :2010/05/07(金) 23:05:29 ID:ZSmA/qjk.net >>433 g_idle_add関数がいいかも。 >>435 WindowsでもGTK+を利用してるけど、必要ならWinAPIも利用するよ ちないに、LinuxのGTK+とWindowsのそれとは挙動がちがうことがあるから 注意が必要
448 :犬山ぽち丸 :2010/05/22(土) 13:39:02 ID:CFJ0lXX6.net 以前ここで質問してご教示いただいた事を参考にして、 縦書きビューワーを作ってみました。 ぽち*ろぐ: ぽちたて 0.1.0 をリリースしました ttp://pochimaru.seesaa.net/article/150542330.html
449 :login:Penguin :2010/05/25(火) 09:28:21 ID:wq6kVR7V.net >>448 おめ!
450 :login:Penguin :2010/06/16(水) 00:53:38 ID:U5l5xiNY.net Xサーバーのdepth=15bit下において以下のコードで色がおかしくなります。(例えば白がマゼンタぽくなる)firefox,gimp上やdisplay -window root では正常に見えます。 こちらの書き方が正しくないのでしょうか?それともgdk-pixbufの15bitでの処理が正しくないのでしょうか16,24bitでは正常に見えます。 (xorg-server-1.7.1,gtk+-2.21.0) #include <gdk-pixbuf-xlib/gdk-pixbuf-xlib.h> int main(int argc,char *argv[]){ Display *dpy; int scr; Window root; int depth; GC gc; GdkPixbuf *pixbuf; gint imgw,imgh; dpy = XOpenDisplay(NULL); scr = DefaultScreen(dpy); depth = DefaultDepth(dpy,scr); root = RootWindow(dpy,scr); gc = DefaultGC(dpy,scr); g_type_init(); gdk_pixbuf_xlib_init_with_depth(dpy,scr,depth); pixbuf=gdk_pixbuf_new_from_file(argv[1],NULL); imgw=gdk_pixbuf_get_width(pixbuf); imgh=gdk_pixbuf_get_height(pixbuf); gdk_pixbuf_xlib_render_to_drawable(pixbuf,root,gc,0,0,0,0,imgw,imgh,XLIB_RGB_DITHER_MAX,0,0); gdk_pixbuf_unref(pixbuf); return 0;}
451 :login:Penguin :2010/06/29(火) 08:21:44 ID:7ZTRAVs/.net この板の奴には分からんだろ
452 :login:Penguin :2010/06/29(火) 12:06:30 ID:SCBkgPqa.net gdk-pixbufの新しいバージョンとソースくらは確認できるだろ?
453 :login:Penguin :2010/06/29(火) 13:07:25 ID:7ZTRAVs/.net くちごたえだけいっちょまえ
454 :login:Penguin :2010/07/01(木) 20:38:54 ID:ff1chlOv.net またgdk-pixbuf分離したのかめんどくせえな
455 :login:Penguin :2010/07/08(木) 13:05:20 ID:kV57IwAm.net あらっ?PPMの色反転してね?
456 :login:Penguin :2010/07/08(木) 21:04:54 ID:kV57IwAm.net ああ勘違いだった、反転フィルタ効いてた
457 :login:Penguin :2010/07/21(水) 21:06:32 ID:eYcae5GB.net ValaでGTK+ vs C++でQt の構図に持って行きたい。
458 :login:Penguin :2010/07/22(木) 01:58:11 ID:PbDDQq9y.net valaつかうぐらいなら、gtk#つかうだろ
459 :login:Penguin :2010/07/22(木) 10:25:07 ID:B8+a86z/.net いやいや、Valaは良い言語だよ。 実行時に余計なライブラリとか要らないし。
460 :login:Penguin :2010/07/22(木) 18:59:19 ID:P6pQJgjf.net gtkbuilder対応もうれしいですね。 > vala
461 :login:Penguin :2010/08/09(月) 22:35:54 ID:FqMSbruc.net クリックする度に画像を切り替えようとして以下のようにしたところ、 2枚目の画像は表示されませんでした。 2枚目の画像を表示するには他にどのような処理が必要でしょうか? #!/usr/bin/ruby require 'gtk2' window = Gtk::Window.new window.signal_connect("destroy") {Gtk.main_quit} image = [] image[0] = Gtk::Image.new("test.s/sample7.jpg") image[1] = Gtk::Image.new("test.s/sample8.jpg") i=0 event_box = Gtk::EventBox.new event_box.add(image[0]) event_box.events = Gdk::Event::BUTTON_PRESS_MASK event_box.signal_connect("button_press_event") { event_box.remove(image[i]) i += 1 i %= 2 event_box.add(image[i]) } window.add(event_box) event_box.realize event_box.window.cursor = Gdk::Cursor.new(Gdk::Cursor::HAND1) window.show_all Gtk.main
462 :login:Penguin :2010/08/10(火) 19:44:28 ID:fAaz4maQ.net >>461 event_box.add(image[i]) event_box.show_all とか
463 :login:Penguin :2010/08/23(月) 22:46:19 ID:UjVUUhyV.net gtkでサブディスプレイにウィンドウを表示するのはどうやればいいんでしょう? メインがlocalhost:0.0でサブがlocalhost:0.1になってます。
464 :login:Penguin :2010/08/24(火) 05:56:03 ID:+4na7v6g.net それはX用語(GTK+でも)でスクリーンというので GtkWindowのscreenプロパティに表示したいgdkScreenを入れるんじゃないかな?
465 :login:Penguin :2010/09/06(月) 00:37:50 ID:DZ6K0yAz.net GTK#なのですが、.NETのWinFormsでいう、 SuspendLayout() と ResumeLayout() はどうすればいいでしょうか?
466 :login:Penguin :2010/09/29(水) 06:17:42 ID:Xcx5gfP/.net 質問です。 GtkBuilderで定義したウィンドウを複数表示するにはどうすればいいでしょうか? 一つだけだったら、gtk_builder_get_objectで取得して簡単に表示出来ます。
467 :login:Penguin :2010/09/29(水) 07:30:54 ID:gR2Kn98z.net >>466 GtkBuilder を複数生成すればいいんじゃないの? 自分がよくやるのは、GtkBuilder を複数生成して gtk_builder_add_from_string で定義を取り込み
468 :login:Penguin :2010/09/29(水) 08:32:23 ID:mEXXgo8J.net Gtkビルダー?マイクソソフトのC++ビルダーみたいな感じか? と思って検索しようと思ったが堪えた
469 :login:Penguin :2010/09/29(水) 18:41:46 ID:jeMZvjSG.net GTK+のRAD開発ツールってgladeじゃん
470 :466 :2010/09/30(木) 03:18:19 ID:oEA2zNJX.net >>467 ありがとう。その方法でやってみる。 >>468 GtkBuilderは、以前のlibgladeにあたるもの。 それに、C++BuilderはMSじゃないぞ。 >>469 もちろん、Glade使ってXMLを作成してるよ。 それを読み込むのがGtkBuilder。
471 :login:Penguin :2010/10/03(日) 23:46:11 ID:y5C9HzxD.net cairoを使って書かれたゲームとかありますかね? 簡単なものでいいのですが
472 :login:Penguin :2010/10/04(月) 11:18:38 ID:9wJE7nSN.net >>471 http://uproda.2ch-library.com/299097YiT/lib299097.c ダウンロードするとlib299097.cというファイルが出来るからこれをgccでコンパイルすればいい コンパイルはディレクトリを移動してから gcc lib299097.c -o cairo_game `pkg-config --cflags --libs gtk+-2.0` と入れれば通るだろう ./cairo_game でゲーム開始だ
473 :login:Penguin :2010/10/07(木) 23:33:21 ID:bzqpJyzy.net gtkmm使ってもなんか書きにくい Python使ったら楽かな
474 :login:Penguin :2010/10/07(木) 23:58:28 ID:wQWwIsB3.net >>473 余程のものじゃない限り、性能的に問題とはならないと思うから、スクリプトは便利だよ。 まぁ、俺は ruby なんだけど。。。
475 :login:Penguin :2010/10/08(金) 13:40:09 ID:BvF1QbPR.net PythonならC++並みに開発環境整備されているし、Ubuntuのアプリも多くが Python + gtk で開発されているよ。
476 :login:Penguin :2010/10/08(金) 13:41:57 ID:yKf5ENPb.net >>474 ( ゚∀゚)人(゚∀゚ )ナカーマ
477 :login:Penguin :2010/10/08(金) 22:26:59 ID:ncsyc+ZE.net PerlとPythonなら どっちがいいですか?
478 :login:Penguin :2010/10/08(金) 22:51:53 ID:lqYDv+Jp.net gtkの開発するなら圧倒的にpython、としか言えんだろこのスレじゃ
479 :login:Penguin :2010/10/08(金) 22:53:13 ID:vwfmsqfo.net CだろJK
480 :login:Penguin :2010/10/08(金) 23:25:32 ID:RoG/rFqo.net 「PerlとPythonならどっちがいいですか?」 「CだろJK」 ぱねぇっす! やっぱハッカーのひとはぱねぇっす!!
481 :474 :2010/10/08(金) 23:53:29 ID:YC1HKIpZ.net ruby 以外のバインディングの事を知らずに書くけど、今時はどの言語でも GtkBuilder を使えるだろうし、 どの言語がいいか何て、自分にどの言語が合ってるか次第なんじゃないの?
482 :login:Penguin :2010/10/09(土) 00:01:38 ID:BvF1QbPR.net >>481 C/C++ 以外では、 gtkが公式にサポートしているのがPython Gnomeの公式アプリに使われているのがPython UbuntuやFedoraでデフォルトでインストールされているのがPython Anjuta等GTK系開発ツールのサポートが一番充実しているのがPython
483 :474 :2010/10/09(土) 00:20:06 ID:HCJJF52G.net >>482 おぉ、Python は gtk で公式にサポートされてるんだ。 それは、いいねぇ。 ruby も入れてくれんかな。
484 :login:Penguin :2010/10/09(土) 04:01:15 ID:mDHE/CAa.net 何でみんなPythonが好きなんだ? 忠誠を誓ってるGoogle様が使ってるから、好きなふりをしてるだけか? そうはいっても本当はPerlが大好きなんだろ?
485 :login:Penguin :2010/10/09(土) 06:24:12 ID:Xt3OjFd+.net 日本のRuby右翼と同じだと思われたくないから
486 :login:Penguin :2010/10/09(土) 13:25:25 ID:JGqpR3KW.net Perlは3日たったら自分の書いたコードでも解読に苦労することがある。 Pythonは30分チュートリアルを読むだけで他人の書いたコードでもスラスラ読めることが多い。
487 :login:Penguin :2010/10/09(土) 13:39:33 ID:3AdxyjT6.net それでもボクはCがいい
488 :login:Penguin :2010/10/09(土) 13:59:17 ID:pWZySSkO.net / ,' i | | ! | | i | | i | | | | | | | | 」_ . :| | | | : : : :|: : │ i . :| . :| 「 { l:. . : . : . :| │ │ : :|: : i _ノ: : : : ヽ、: :|: : : : |: : : : :/ }| | |: : : : : : :| 〈::| │: : 斗‐ 「 │: : : : :.:.| 「:.T ー-|- : : :| l|. l lヘ: : : : : :| まあ、いやらしい。 \:::L_」─‐-ンt云、└─- -┘ ィ乏ァ-.、─-:l l. | ', ヽ: : : : | r.、:、:::∧ l∧イ;::::}` ´{;イ:;::::::}ヾ| } l l } 〉: : : :| | |:::::::::ヘ 弋;r:ユ 辷_;:r:.ソ l/ | | |,/: : : : :| | {、:::::::: ', ´  ̄ / /│:. : : :| ヽ ヾ::::::::::! " " " "/ ノ:.: : : : l |ヘ ヽ::::::}、 、 / /: : : : : : : ', |: :ヽ \::::`:.、 ヽ_フ / /: : : : : : : : : : ヽ |: :.:ィ\ \:::::::丶、 { /|_,.-‐'" ̄ \: ヽ / |: : :ヽ `ー==:≧ 、_ イ| / /:::::::/ ヽ:.} / l: : : :| 人:::::::::::| l:.:/:::::::/ ヽ | ヽ: : l /、  ̄ ̄| l/:::::::/ | | ∨ /::::::: ̄ ̄ | |::::::/ | | / /::::::::::::::::::::::| l::::::{ |
489 :login:Penguin :2010/10/10(日) 18:30:46 ID:Sp+agnVp.net そのAAを壁紙にしたい
490 :login:Penguin :2010/10/11(月) 18:54:49 ID:VGide9Wk.net pythonって,vbaみたいな位置付けだな
491 :login:Penguin :2010/10/19(火) 16:15:51 ID:EWnEpHL/.net GTK+を使ってプログラムを作ると、MacOSXでボロボロな結果になるから使わないほうがいい。
492 :login:Penguin :2010/10/19(火) 17:17:34 ID:2NWEe5/4.net 位置づけとは微妙 pythonは、VBAほど腐ってはいないぞ ところでVBAの近代化って進んでいるのか? Access VBA甘グラマ供の再利用は由々しき問題ぜよ
493 :login:Penguin :2010/10/19(火) 19:29:33 ID:mjCBYhC0.net VBAも.netが使えるっぽいから、近代化進んだんじゃないの?
494 :login:Penguin :2010/10/19(火) 19:47:43 ID:/Nj/keXZ.net >>491 どう考えてもGTKが悪いのではなく糞マックが悪いと思うんだが。
495 :login:Penguin :2010/10/19(火) 19:49:07 ID:Ux5sdFhe.net どっちが悪いという話はしていないと思う。
496 :login:Penguin :2010/10/19(火) 20:39:28 ID:2NWEe5/4.net >>493 そうなの? ttp://www.microsoft.com/japan/msdn/vba/ なんて2003年でとまってんだけど、更新が。
497 :login:Penguin :2010/10/19(火) 21:38:06 ID:mjCBYhC0.net >>496 [HOWTO] Microsoft Office で Visual Basic for Applications から Visual Basic .NET クラス ライブラリを呼び出す方法 http://support.microsoft.com/kb/317535/ja こういう事が出来るらしい。 けど一般的じゃないっぽいね。 まぁ互換性失われるし一般的にはならないように感じられるな…
498 :login:Penguin :2010/10/20(水) 16:42:06 ID:dibJXxnt.net >>494 GTK+がマルチプラットフォームになるように吸収するんだろ? だったら、Macは悪くない。 かと云って、「GTK+が悪い」と云うのはおこがましい。 文句云っていいのは、それ相当のものを作れる人だけだ。
499 :login:Penguin :2010/10/20(水) 16:59:50 ID:nkUeeiMO.net >>498 「同じようなモノをつくれるひとでなければ批評してはいけない」というのなら ・linuxの○○の部分が悪いといっていいのはOS開発者だけ ・ゲームの○○が面白くないといっていいのはゲーム開発者だけ ・携帯電話の○○が使いづらいといっていいのは端末開発者だけ ・新作映画のストーリーラインを批判していいのは映画監督だけ そういうのって言論封殺っていわない? オープンソース風土とはだいぶ違う文化じゃない?
500 :login:Penguin :2010/10/20(水) 17:17:25 ID:xVoAed/u.net WindowsでもLnFはぼろぼろだよね。
501 :login:Penguin :2010/10/20(水) 21:35:34 ID:9tE6IJS+.net osxのgtk+ってx window版とネイティブ版とあるんじゃなかったっけ?
502 :login:Penguin :2010/10/22(金) 10:57:35 ID:i0oNjkXQ.net Windows7でも見た目が最悪になるからな。 MacOSXみたいに日本語入力ができないとか絶望的ってほどではないが。
503 :login:Penguin :2010/10/22(金) 11:53:18 ID:r2m3k6+H.net Pythonバインドでも同じ問題って起こるの? 今日からPython勉強してGUIなアプリを作ってみようと思っていたのだが・・。 Qtのほうがいいのかな。でも、GNOME使ってるしGtkがいいんだよな
504 :login:Penguin :2010/10/22(金) 22:39:01 ID:T3dIa7zi.net そんなあなたにPythonでもC++でもPerlでもokの wxGlade http://wxglade.sourceforge.net/ はどうかな?
505 :login:Penguin :2010/10/24(日) 07:46:05 ID:Vhl0qsDm.net 残念だが、日本語云々の話はWindows1.0のレベルにも達していないというのが現実。 開発体制の問題だろうね。
506 :login:Penguin :2010/10/24(日) 22:57:17 ID:uho4GCjV.net 酷いと思うけどさすがに1.0はないだろ それに日本語(2バイト文字)関連はGtkよりQtのが酷いしマシな方
507 :login:Penguin :2010/10/26(火) 18:03:28 ID:XGIO2f11.net GtkTreeView内のテキスト(gtk_cell_renderer_text_newで設定したもの)がカラムの幅を超えたら自動的に折り返して次の行に表示するようにできませんかね? 現状はカラムの幅を超えた部分は消えてしまいます。自分で改行を入れた場合は次の行に表示されるので折り返しも出来そうな気はするのですが。
508 :login:Penguin :2010/10/26(火) 18:05:34 ID:O6NRu0pw.net ttp://library.gnome.org/devel/gtk/unstable/GtkCellRendererText.html#GtkCellRendererText--wrap-mode
509 :login:Penguin :2010/10/26(火) 18:32:48 ID:XGIO2f11.net >>508 ありがとうございます!
510 :login:Penguin :2010/11/02(火) 19:29:02 ID:0mcR1TdE.net TreeView内にGtkCellRendererTextでテキストを表示する場合に、一部の文字だけ色を変えたり太字にしたりすることは可能でしょうか? あるいはTreeViewにGtkEditableを格納するようなことができればそれでもよいのですが。
511 :login:Penguin :2010/11/02(火) 19:41:27 ID:RVdg5wgR.net >>510 pango markupで対応するんじゃね?
512 :login:Penguin :2010/11/04(木) 13:45:22 ID:xBpDemuD.net >>511 g_object_set (renderer, "markup","ab<b>cd</b>e", NULL); とかでできました。ありがとう!
513 :login:Penguin :2010/11/07(日) 14:39:48 ID:qFCSAFkG.net GtkTextIterのリファレンス読んでて、iterって単語がいっぱい出てくるけど これって、日本語に訳すとどういう単語が適切なのかな? iteratorで「反復子、繰り返しの概念」って出てきて、いまいち意味がつかめず iterって出てくると、まったくもって意味がわからん。 ググっても、熱核融合炉とか出てくるし…
514 :login:Penguin :2010/11/07(日) 14:43:10 ID:Um+oFuZb.net イテレータはイテレータだよ ループの抽象化
515 :login:Penguin :2010/11/07(日) 14:57:51 ID:qFCSAFkG.net >>514 iteratorとiterは、まったく同じと考えりゃいいということ?
516 :login:Penguin :2010/11/08(月) 06:15:04 ID:Wxghvts2.net >>515 正確な話は分からないけど、Gtkで出てくる?Iterの類は"位置を指す物"と理解してる。 GtkTextIterでいうと、GtkTextBuffer中のどこかの位置を指す。 イテレータだと、意味するものが広くてピンとこない感じがする。 かといって、訳す場合に他にいい単語があるかは分からない。
517 :login:Penguin :2010/11/08(月) 06:20:30 ID:Wxghvts2.net ごめん、文字化けした "?Iter"は"なんとかIter"ってことね
518 :login:Penguin :2010/11/08(月) 20:12:16 ID:M/miEbwJ.net >>516 ものすごく参考にさせていただく。ありがとう。
519 :login:Penguin :2010/11/09(火) 00:55:32 ID:Tw+0pcNe.net C++のイテレータはポインタと同じ動作をするものと考えられている。 ポインタのようなものっていう概念が一番しっくり来る。
520 :login:Penguin :2010/11/13(土) 16:17:20 ID:Pqzt35wF.net >>519 ものすごく返答が遅くなったけど、感謝します。
521 :login:Penguin :2010/11/22(月) 02:59:05 ID:PS3m5Gby.net GTK+のリファレンスを見てると、ところどころに "… is deprecated and should not be used in newly-written code." ってのが、出てきます。 「推奨しないし、使うなよ」って意味だけど、どうすればいいの? 公開する予定の無いプログラムだから、無視して使ってるけど。
522 :login:Penguin :2010/11/22(月) 03:05:51 ID:9McU1lSw.net 他のやり方があるはず
523 :login:Penguin :2010/11/24(水) 15:54:13 ID:euuHJfN4.net GtkTreeViewでアクティブなRowをハイライトして色を反転させる 機能を無効にすることはできますでしょうか? 自分の環境ですとアクティブなRowは青い背景に白い文字でハイライト されてしまいます。 RowのSelected状態は変えることができるのですが、そちらはRowが Select時に灰色っぽくなるだけで問題ないのです。ハイライトの機能 の方を無効したいです。
524 :login:Penguin :2010/11/29(月) 21:54:46 ID:sMx9z6BS.net button = gtk_button_new_from_stock (GTK_STOCK_CANCEL); と、ボタンにアイコンを付けようとしても、アイコンが出てきません。 上の場合、「キャンセル(_C)」というラベルだけ出ます。 メニューバーにアイコンを付けようとしても、アイコンが出ません。 何か欠けてるんでしょうか?
525 :login:Penguin :2010/11/29(月) 22:14:12 ID:lGrvc++f.net gtk_button_set_image()の説明に"gtk-button-images"の設定によると書いてあるから調べてみて
526 :login:Penguin :2010/11/29(月) 22:34:36 ID:sMx9z6BS.net >>525 ありがとう。今から調べます。
527 :login:Penguin :2010/11/29(月) 22:58:14 ID:sMx9z6BS.net 他に同じく悩む人がいるとは思えませんが、解決したのでご報告。 525さんにヒントいただいて、devhelp読んで、ググったら下のとこが出た。 http://ubuntuforums.org/showthread.php?t=1135510 ここの逆をやって、アイコンが出ました。ありがとう。
528 :login:Penguin :2010/11/29(月) 23:22:35 ID:OgcvDSer.net >>527 つーか、俺もこれずっと悩んでた。 原因が分かってスッとしたよ。ありがとう!
529 :login:Penguin :2010/11/30(火) 12:55:40 ID:M+63bYwL.net >>527 ありがとう!!
530 :login:Penguin :2010/11/30(火) 16:19:03 ID:TQa7Ptpz.net >>527 なんかよくわかんないけど、オレからもありがとう!
531 :login:Penguin :2010/11/30(火) 21:51:44 ID:o02+ms48.net >>527 なんのことかわからんけど、俺からもありがとう!
532 :login:Penguin :2010/12/01(水) 23:14:33 ID:xPo+2HeT.net MinGWでWindowsむけにGTK+アプリをクロスコンパイルしている人はいるのだろうか。 Windows上で環境構築せずにすむから楽そうなんだけれど。
533 :login:Penguin :2010/12/02(木) 00:56:21 ID:zqStIY3v.net >>532 最近のFedoraはmingw関連のパッケージがたくさん追加されているから Windows向けのクロスコンパイルは簡単だよ。
534 :login:Penguin :2010/12/02(木) 08:40:09 ID:TtpWl3rj.net Fedoraかぁ…。 調べてがんばってみる。
535 :login:Penguin :2010/12/03(金) 13:50:17 ID:G8uZw67f.net TreeViewでCellRendererTextで描画してるカラムについてなんですけど、CellRendererTextにwrap-widthを設定した場合、そのカラムをwrap-width以下にリサイズすることができなくなってしまいます。何か回避方法はありますか? 欲を言えばwarp-widthがカラムの幅に対して自動的に変わるようにしたいです。
536 :login:Penguin :2010/12/03(金) 14:43:06 ID:nwQzeTfG.net なんかいまいちな気がするけど http://www.islascruz.org/html/index.php?blog/show/Wrap-text-in-a-TreeView-column.html
537 :login:Penguin :2010/12/03(金) 16:46:38 ID:G8uZw67f.net >>536 おお、pythonだけどCでも全然いけそうな対処ですね。 ありがとうございます!
538 :login:Penguin :2010/12/13(月) 14:42:35 ID:GOtpVrpZ.net GtkTreeViewで質問です。 gtk_tree_view_set_grid_linesで水平のグリッドラインを表示した状態でcell-background-gdkを使ってセルの背景色を設定しているのですが、色をつけたセルだけグリッドラインが消えてしまいます。何か解決方法ってありますか?
539 :login:Penguin :2011/01/09(日) 09:14:57 ID:urRBMp8d.net GTKを利用したプログラミングの勉強をしているのですが、不明な点があり質問させていただきます。 GTKにて作成したウインドウを常に最前面に表示しておきたいのですが、 それを実現するにはどのようにすればよいでしょうか? ビュアーのようなものを作っているのですが、他の作業をしながらも確認したいため 他のウインドウより手前に表示しておくことが出来ればと考えております。
540 :login:Penguin :2011/01/09(日) 09:42:27 ID:geIJW/Gp.net >>539 >GTKにて作成したウインドウを常に最前面に表示しておきたいのですが、 WM(ウィンドーマネージャ)側の設定で、できるんじゃないのかな。
541 :login:Penguin :2011/01/09(日) 12:54:14 ID:98wyOWKO.net gtk_window_set_keep_aboveというのがあるが、うまくいくかはWMに依存する
542 :login:Penguin :2011/01/09(日) 13:28:00 ID:urRBMp8d.net >>541 ありがとうございます。 うまく動きました。
543 :login:Penguin :2011/01/10(月) 15:25:42 ID:pdeWcU/o.net おっさんにもわかるPYTHONの ”ウィンドウを表示するために--クラスを作成する” で >> self.wTree.add_from_file(os.path.dirname(os.path.abspath(__file__))+"/"+self.gladefile) のところで glib.GError: root 要素が間違っています: 'glade-interface' となり止まってしまいます。どなたか解決方法がわかる方お願いします
544 :login:Penguin :2011/01/10(月) 16:41:54 ID:lxMobblK.net しらんが os.path.join(os.path.dirname(__file__), self.gladefile) とかな
545 :543 :2011/01/10(月) 17:33:42 ID:pdeWcU/o.net 最初から作り直してわかったんですがgladeのほうの設定がおかしくなってたみたいでした ご迷惑おかけしました
546 :login:Penguin :2011/01/11(火) 21:47:15 ID:vH5X5SgR.net Gtkのアプリケーションを勉強しているのですがわからないことがあります。 TreeViewを利用して、計算結果が順次追加されていくアプリケーションを制作しているのですが、 計算結果が追加されていくに連れて結果を見るにはスクロールが必用になっております。 自動でスクロールを一番下に持って行くにはどのようにすればいいのでしょうか? 理想としては、スクロールが一番下にされていれば、リストが追加されるたびに常に一番下に スクロールされ、スクロールが途中になっていれば項目が増えてもスクロールは維持。 というふうにしたいです。 ScrolledWindowのset_vadjustmentを利用すればいいことはわかったのですが、 うまく動かすことができません。
547 :login:Penguin :2011/01/11(火) 23:29:55 ID:5lRRaNMx.net 多分ちゃんとしたやり方ではないけれども http://ideone.com/5B9PD
548 :login:Penguin :2011/01/12(水) 00:28:52 ID:vB7prOwP.net 便乗質問 gtk.TreeViewColumnで幅を指定しているときにその幅を超える文字列は折り返したいんだけど、オプションが見当たらない。 オプションってないの?
549 :login:Penguin :2011/01/12(水) 00:47:08 ID:5/uHApeb.net gtk.CellRendererTextのwrap-width
550 :548 :2011/01/12(水) 18:24:47 ID:vB7prOwP.net >>549 ありがとう CellRenderTextのほうで折り返しが設定出来たのか。 考えてみると、確かに折り返すのはTextだね。 関連でもうひとつ質問させてください TreeViewColumnをset_resizable( True)にしているんだけど、カラムがリサイズされたときはどこのシグナルがでる? 自分なりに捜してみたのだけど、みつからない、。
551 :login:Penguin :2011/01/12(水) 19:26:21 ID:B0eGTMcl.net GTKなんて時代遅れ
552 :login:Penguin :2011/01/12(水) 21:39:01 ID:DAHnc8sL.net 時代はQ'tだってか?www
553 :548 :2011/01/12(水) 21:41:05 ID:vB7prOwP.net 上に同じ質問がありましたね。 検索に出て気づきました。 すみません。ありがとうございました。
554 :login:Penguin :2011/01/13(木) 18:44:21 ID:XeFPXStO.net ねらのみなさんに質問させていただきます。 正確にはGTK#なんですがGTK+でもいいです。 ウィンドウを常に最背面に表示する方法はありますか? 検索するとこんなのが見つかったのですが、 #include <gdk/gdk.h> #include <gdk/gdkx.h> #include <gtk/gtk.h> #include <X11/Xatom.h> #define WIN_LAYER_DESKTOP 0 #define WIN_HINTS_SKIP_WINLIST (1<<1) #define WIN_HINTS_SKIP_TASKBAR (1<<2) #define XA_WIN_LAYER "_WIN_LAYER" #define XA_WIN_HINTS "_WIN_HINTS" ーーーーーーーーーーーーーーーーー /* windowを一番下に置く */ data[0] = WIN_LAYER_DESKTOP; gdk_property_change(GTK_WIDGET(window)->window, gdk_atom_intern(XA_WIN_LAYER, False), (GdkAtom) XA_CARDINAL, 32, PropModeReplace, (unsigned char *) data, 1); /* taskbarやwinlistにこのwindowを表示させないようにする */ data[0] = WIN_HINTS_SKIP_WINLIST | WIN_HINTS_SKIP_TASKBAR; gdk_property_change(GTK_WIDGET(window)->window, gdk_atom_intern(XA_WIN_HINTS, False), (GdkAtom) XA_CARDINAL, 32, PropModeReplace, (unsigned char *) data, 1); XA_CARDINALってなんでしょう?? 上記ソース by http://www.host.or.jp/cgi-win/webboard/wb_cont.exe?programing+g+10016+NAME
555 :login:Penguin :2011/01/13(木) 20:04:15 ID:yufk+Tn2.net そのURLは叩きたくない 本家にいきましょう GTK#本家 http://www.mono-project.com/GtkSharp 関連スレ [Not Gtk+] Gtk#質問スレッド [mono] http://hibari.2ch.net/test/read.cgi/linux/1294642865/
556 :login:Penguin :2011/01/13(木) 20:14:13 ID:Q+1lsYEj.net >>554 荒らしてんじゃねーよカス
557 :login:Penguin :2011/01/13(木) 20:18:51 ID:XeFPXStO.net >>556 煽り厨キター
558 :login:Penguin :2011/01/13(木) 20:20:21 ID:XeFPXStO.net 連投すいません。 本家のフォーラムで聞いてみようと思います。
559 :login:Penguin :2011/01/14(金) 03:23:12 ID:KnKuBbAY.net 初心的な質問でスミマセンが pythonでglade3でつくったLabelの内容を変更するには どう直したらよいか教えていただけますか? #!/usr/bin/env python # -*- coding:utf-8 -*- import os import os.path import gtk import gtk.glade class counterGTK: def __init__(self): self.gladefile = 'var0.1.glade' self.wTree = gtk.Builder() self.wTree.add_from_file(略) # count number self.number1 = 0 dic = { "on_clicked1" : self.on_clicked1 , "on_clicked2" : self.on_clicked2 , "on_window1_destroy" : self.on_window1_destroy } self.wTree.connect_signals(dic) self.mainWindow = self.wTree.get_object("window1") self.mainWindow.show_all() def on_window1_destroy(self, widget): gtk.main_quit() def on_clicked1(self, widget, event=None): self.number1 += 1 # !!!ここが変と表示が出ます。 self.mainWindow.set_text(str(self.number1)) if __name__ == "__main__": 略
560 :login:Penguin :2011/01/14(金) 09:50:28 ID:QJfXyK10.net プログラム http://hibari.2ch.net/tech/
561 :login:Penguin :2011/01/15(土) 22:11:43 ID:KQmBhVmm.net >>559 set_titleじゃ駄目?
562 :login:Penguin :2011/01/17(月) 01:04:20 ID:VJob0is5.net ブラウザやエディタの上で、 マウスカーソルの下にあるテキストを取得する単純な 方法ってあるんでしょうか?ダブルクリックすると反転する単語 を取り込みたいのですが。出来ればトリプルクリックで反転する 一行も一緒に取り込みたいです。
563 :login:Penguin :2011/01/17(月) 01:09:27 ID:VJob0is5.net すいません、アプリケーションによって トリプルクリックでの反転の仕様は違うようですが、 マウス位置が所属するパラグラフ、単語、行を同時にとりこみたいのです。 言い忘れましたが想定する言語は英語などアルファベットのものです。
564 :login:Penguin :2011/01/19(水) 01:15:17 ID:AHjWAb2g.net GTK+3.0のリリースが楽しみだなぁ Windows版とかMac版の出来が気になる
565 :login:Penguin :2011/01/21(金) 13:29:12 ID:oTTqy+gy.net >>561 遅れてすみません self.mainWindow.set_title(str(self.number1)) に直すとウィンドウのタイトル欄の方に表示 おかげで一歩前進できたありがとうございました
566 :login:Penguin :2011/01/25(火) 22:03:31 ID:93ZVq4E+.net 家計簿のようなものを作りながらPyGTKの勉強をしております。 TreeViewを使ってリストを作成しているのですが、 ID 値段 名前 メモ 1 100 コーラ 自販機 2 200 カルピス 自販機 のようなリストがあるとして、リスト中を右クリックすると編集メニューを出すようにしたいのですが、 右クリックした際にメニューを出す方法や、右クリックした列の値の取得方法がわからず悩んでおります。 どのようなコードで実現できるでしょうか?
567 :login:Penguin :2011/01/25(火) 22:15:19 ID:3NJ+mNNa.net >>566 自分で調べる気はないのかね? http://lmgtfy.com/?q=gtk+treeview+popup+menu
568 :login:Penguin :2011/01/25(火) 23:38:42 ID:93ZVq4E+.net >>567 いろいろなワードで調べてみたのですが、見つけることができませんでした。 >>567 の検索候補も見てみたのですが、TreeViewで右クリックした時の処理はあるのですが、 右クリックした行の値を取得する方法はありませんでした。
569 :login:Penguin :2011/01/25(火) 23:55:07 ID:p4XnSN29.net >>568 テストしてないけど、gtk.TreeView.get_selection()で取れない?
570 :login:Penguin :2011/01/26(水) 06:42:35 ID:n1B9dBtN.net VBoxにLabelやEntryをいくつか配置すると高さが全て均等になりますが、高さを設定するにはどうすればいいですか?
571 :login:Penguin :2011/01/26(水) 08:43:37 ID:LEML9YPE.net ぴーな?
572 :login:Penguin :2011/01/26(水) 09:51:05 ID:z74Fwadf.net GTK+を使ってシリアルポートで自作ハードウェアと通信することは出来ますか?
573 :login:Penguin :2011/01/26(水) 11:33:09 ID:h7bjSSMJ.net >>572 自作ハードウェアが動くか知りませんが、「gtk シリアルポート」でググると アホみたいに検索結果が出てきますが。 http://www.linuxquestions.org/questions/programming-9/gtk-serial-port-communication-313238/ http://sourceforge.net/projects/gcomm/
574 :570 :2011/01/27(木) 04:23:46 ID:HXLIqy/B.net HBOXでは高さの指定ができないのですかね
575 :login:Penguin :2011/01/28(金) 11:05:05 ID:Gptdpqjn.net すいません、教えてください。 ubuntuにて、pixmapにgdk_draw_stringで日本語を表示させたいのですが、文字化け し、下記のメッセージが出ます。 does not support all the required character sets for the current locale "ja_JP.utf8" どのようにしたら正常に表示できるようになるでしょうか。
576 :login:Penguin :2011/01/29(土) 01:44:56 ID:6hO1Bdmk.net ロケールやフォントを変更したらどうだろうか?
577 :login:Penguin :2011/01/29(土) 02:07:22 ID:l0OT+bD3.net gdk_draw_ナントカはdeprecated cairo使ってね
578 :login:Penguin :2011/02/01(火) 23:01:59 ID:4jG8Kz/p.net TreeViewの文字列にURLがあればハイパーリンクにしたいと思っているのですが、TreeViewの文字列を ハイパーリンクにするにはどのようにすればいいのでしょうか?
579 :login:Penguin :2011/02/02(水) 20:38:30 ID:KRwtVrWu.net >>578 g_spawn_command_line_sync()でgvfs-openコマンド呼べばいいんじゃね? ダメならエラーが返るだろうし。 URLかどうか判断するなら、GRegex使うのが良いのかな?
580 :login:Penguin :2011/02/12(土) 01:27:29 ID:Tq5jzXI4.net 3.0 releaseしてたんだな
581 :login:Penguin :2011/02/13(日) 02:06:32 ID:Y2lUgTlR.net 結局、OpenGLは統合されなかったか…
582 :login:Penguin :2011/02/13(日) 16:56:29 ID:q0+Fj2Ij.net 以下のように画像を表示するだけのプログラムを作成しました。 この画像を表示したまま、プログラムを終了したいのですが、 そのようなことは可能でしょうか。 (他のプログラムに上書きされるまで、プログラム終了後も画像を表示しつづける。) /* 画像表示領域の生成 */ drawing_area = gtk_drawing_area_new(); gtk_widget_set_size_request( drawing_area, gdk_pixbuf_get_width( pixbuf ), gdk_pixbuf_get_height( pixbuf ) ); gtk_container_add( GTK_CONTAINER( window ), drawing_area ); g_signal_connect( G_OBJECT( window ), "delete_event", G_CALLBACK( close_window ), pixbuf ); g_signal_connect( G_OBJECT( drawing_area ), "expose_event", G_CALLBACK( expose_event ), pixbuf ); gtk_widget_show_all( window ); gtk_main();
583 :login:Penguin :2011/02/13(日) 17:17:13 ID:CYJdXAks.net ウィンドウの×ボタンを押したら隠れるのはすぐできるけど、何がしたいのかよくわからないので教えて
584 :login:Penguin :2011/02/13(日) 17:45:42 ID:q0+Fj2Ij.net >>583 説明が少なくてすいません。 X86 Linux PCを使って業務用のシステムを作っています。 PCを起動して、OSが立ち上がったあと、自動で以下の処理を行います。 1)USBメモリが接続されているチェックします。 2)もしUSBメモリがマウントできたらファイル(数百Mバイト)をHDDにコピーします。 3)ファイルコピー完了後に、メインの処理を行います。 2)のファイルコピーに時間がかかるため、その間に「しばらくお待ちください」という静止画を フルスクリーンで表示したいんです。1)〜3)の処理はシェルスクリプトで行い、 #!/bin/bash (省略) | 静止画を表示 cp aaa.bin /temp // ファイルコピー 静止画を消す | メインの処理 という感じでやりたいと考えています。 シェルスクリプトでやるのが最適かどうかわからないのですが・・・。
585 :login:Penguin :2011/02/13(日) 17:56:06 ID:XiVInOjw.net で、教えたらお前の給料の何割くれるんだ?
586 :login:Penguin :2011/02/13(日) 18:14:42 ID:ibuao8Zp.net プログラム起動→メッセージ表示→シェル実行→シェルの終了待ち→戻り値確認→終了処理 ではダメなん?
587 :login:Penguin :2011/02/13(日) 18:30:28 ID:YWgLFWCD.net >>584 商売でオプソ使うのは止めたほうがいいよ 嫌味で言ってるんじゃなくて、法務的な問題が多すぎてメリット無いって ソースコード開示しろって言われたとき、開示できる仕様なの? 客先とトラブルになっちゃうよ? 止めた方がいいと思うけど
588 :583 :2011/02/13(日) 20:56:45 ID:L9k+0hAb.net >>584 内容了解。俺だったらこんな感じに実装するけどこでどうかな? どうしても一回プロセス自体終了する必要があるのであれば もう少し手を入れないといけないと思う。 スクリプト内のhelloworld.pyは以下のもの http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py #!/bin/bash ${PWD}/helloworld.py & GTKPID=$! sleep 10 kill ${GTKPID} exit
589 :login:Penguin :2011/02/13(日) 23:32:30 ID:q0+Fj2Ij.net >>588 ありがとうございます。 なるほど、そのようなやり方があるのですね。 非同期のプロセスで画像を表示し、 ファイルコピーが完了したら プロセスをkillするということで理解しました。 私の思っていることが出来そうです。 たいへん勉強になりました。 >>587 同僚の仕事を楽にするために、手伝っています。 今回の件のソースは公開しても全然問題ないのですが、 今後は気をつけようと思います。 以上、ありがとうございました。
590 :login:Penguin :2011/02/15(火) 00:33:40 ID:yHAzvg6R.net http://sourceforge.jp/magazine/11/02/14/0318203 2年ぶりのメジャーリリース、「GTK+ 3.0」が登場 2年ぶりって… 訳も適当だし、なんか寂しいリリースだな
591 :login:Penguin :2011/02/19(土) 17:26:47 ID:7Kan848G.net PyGTKを使っているのですが、TreeViewのデータを更新したいのですがどのようにすればわからず苦しんでおります。 行いたいことは、 TreeViewに(ID,TEXT)というカラムありデータが羅列しています。 そのIDを指定してTEXTの内容を変更したいのですが、どのようにすればいいでしょうか? どうかご教授頂ければと思います。
592 :login:Penguin :2011/02/20(日) 22:47:31.70 ID:9P4zTjVT.net >>591 簡単に言うと、TreeStoreのIterを対象のところ(ID)まで移動して、 tree_store_set()を行う。 http://library.gnome.org/devel/gtk/unstable/TreeWidget.html#id895991
593 :login:Penguin :2011/02/20(日) 22:55:37.60 ID:i278BMok.net (´・ω・`)ご教示だろ
594 :login:Penguin :2011/02/20(日) 22:59:25.78 ID:AtCPi59r.net 女教授だって
595 :login:Penguin :2011/02/28(月) 09:54:32.03 ID:TADfIJ7a.net http://hibari.2ch.net/test/read.cgi/unix/1294818791/
596 :login:Penguin :2011/03/06(日) 02:46:29.22 ID:fhS84NZT.net スレ違いであれば申し訳ないございません。 LinuxでGTK+を使ってアプリを作成しています。 Windowsで言うグローバルホットキーを実装したくて色々調べたのですが該当するページが見つからず途方にくれています。 GTK+にはRegisterHotKey()に当たる関数はないのでしょうか? また、Linuxでグローバルホットを実装する方法があればご提示お願い致します。
597 :login:Penguin :2011/03/06(日) 04:33:17.56 ID:tsVY1dm+.net >>596 gtk hotkey でググったら、一発ですが探してないの?
598 :596 :2011/03/07(月) 03:13:28.76 ID:PnCjIDjh.net >>597 すいません、ググり方が少し違ったようで・・・ 「Linux プログラミング ホットキー」などで探していました。 ご指摘頂いたワードで検索した結果なんとか行けそうです。 本当にありがとうございました。
599 :login:Penguin :2011/03/08(火) 11:03:24.04 ID:d1JzSVeD.net 検索って難しいよね。目的の情報に準じた予備知識があって 適切なキーワードを選択できてはじめて探し当てられる。
600 :login:Penguin :2011/03/08(火) 12:59:49.88 ID:a0IyugMv.net >目的の情報に準じた予備知識があって あるある。だいぶ知恵ついてくると簡単に検索できるようになるけど、初めての分野だと一向にヒットしない よく初心者スレで「検索しても見つかりませんでした」「○○で検索すればすぐみつかるだろksg」 みたいなやりとり見るけど、正直初心者にはムリだよな…と思ったりもする。放置するけど 今度またググル先生がアルゴリズム変えるらしいけど、こういった点では改善がみられるかなあ…
601 :login:Penguin :2011/03/08(火) 19:26:19.05 ID:tKbotCXi.net 3.0.0になってLnFはなんか変わった? 右側に0ナンバーが多いものはなんか怖いから、まだ試してない。
602 :login:Penguin :2011/03/13(日) 21:58:33.68 ID:Vqq2M10I.net valaつかっているひといますか?
603 :login:Penguin :2011/03/13(日) 23:48:32.57 ID:u6WvClB5.net >>602 http://hibari.2ch.net/test/read.cgi/linux/1246771919/
604 :login:Penguin :2011/03/17(木) 17:02:45.22 ID:+oBUwr3N.net 質問です。pygtkを使っています。 gtk.TextViewの背景色を変更するにはどのようにすればよいでしょうか?
605 :604 :2011/03/18(金) 15:07:37.88 ID:hYpmyKaN.net 自己解決しました。 modify_base(state, color)で変更できました。
606 :login:Penguin :2011/04/29(金) 21:13:49.14 ID:8r02bpAR.net squeeze gtkmm 2.4 gtkglextmm 1.2 pthread でプログラムを作っているんだけどプログラムの終了 時に以下のエラーが出るようになってしまいました。同じようなエラーを経験した方は居ませんでしょ うか? glibmm-CRITICAL **: Glib::ObjectBase* Glib::wrap_create_new_wrapper(GObject*): assertion `wrap_func_table != 0' failed glibmm-WARNING **: Failed to wrap object of type 'GdkScreenX11'. Hint: this error is commonly caused by failing to call a library init() function.
607 :606 :2011/04/30(土) 22:26:19.43 ID:VyP2E163.net 自己解決しました。何でコンパイルが通るんだ・・・ 誤 Gtk::Main kit( argv, argc ); Gtk::GL::init( argv, argc ); 正 Gtk::Main kit( argc, argv ); Gtk::GL::init( argc, argv );
608 :login:Penguin :2011/05/02(月) 11:45:41.61 ID:izX8cIkn.net 通らない理由がないからな
609 :login:Penguin :2011/05/03(火) 00:46:43.55 ID:WBrmWZ0j.net >>607 試してみたら普通にコンパイルエラーになる。 それと関係無いけど、gtkmmは中々むずいよ… 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)); void AppWindow::on_quit_action_activated() { Gtk::Main::quit(); } とあるコードの一片だけど、敷居が高いというかなんというか… そんで今はValaを使ってる。Valaだと↓こんな感じ。 var quit_action = builder.get_object("action_quit") as Gtk.Action; quit_action.activate.connect(() => { Gtk.main_quit(); });
610 :login:Penguin :2011/05/03(火) 18:07:59.69 ID:6MgTkiYn.net >>609 コンパイルが通る方は適当に作った変数を食わしてたんだけど何故か逆にしてもコンパイルが通る 今は書き直して本物のargc,argvを入れています。 valaか〜・・・ドキュメント多い?
611 :login:Penguin :2011/05/07(土) 08:45:48.59 ID:dGkArH/V.net Valaは日本語のまとまったドキュメントは皆無だね。 英語だったら本家サイトのドキュメントで困る事はないよ。 最終的にC言語にトランスレートされるんだけど、そのソースを見るのが中々楽しいw
612 :login:Penguin :2011/05/11(水) 17:31:43.03 ID:ZkP/smDq.net gtkで音楽を鳴らすことは出来ますか? どうすればいいでしょうか?
613 :login:Penguin :2011/05/11(水) 21:14:23.65 ID:lC/0GEj9.net できません
614 :login:Penguin :2011/05/11(水) 21:50:59.78 ID:TI/wHkRV.net 音楽の方はGTKとは関係ないんじゃないかね? とりあえずALSA APIとか調べてみては?
615 :login:Penguin :2011/05/14(土) 12:57:13.28 ID:z2Mrc21j.net すいません windowsでgtk+の開発環境を整えたいのですが参考になるサイトありませんか?
616 :login:Penguin :2011/05/14(土) 13:14:39.16 ID:5Yfumgbf.net 板の名前を100回読読んで最後にサーをつけてみやがれ糞ども
617 :login:Penguin :2011/05/14(土) 16:45:40.19 ID:lAxQi/en.net >>615 プログラム板にスレがあるよ そっちで聞けば回答がもらえるかもしれない こっちの質問は撤回して向こうへ行くといい
618 :login:Penguin :2011/05/14(土) 18:54:06.07 ID:ndPfVk8h.net >>615 http://masaya.w32.jp/?p=463 http://masaya.w32.jp/?p=470 http://masaya.w32.jp/?p=476 http://masaya.w32.jp/?p=482
619 :login:Penguin :2011/05/14(土) 19:17:02.73 ID:z2Mrc21j.net >>617 ありがとうございます でも、やっぱりwindowsだと面倒くさそうなのでLinuxでやることにしました そこでまた問題があるのですが (PDF注意) http://www.iim.cs.tut.ac.jp/~sugaya/books/GUI-ApplicationProgramming/files/GTK-book-chapter2.pdf ここに載っているサンプルプログラムをコンパイルしたら以下のエラーが出たのですがどうすればいいのでしょうか? package gtk+-2.0 was not found in the pkg-config search path. Perhaps you should add the directory containing `gtk+2.0.pc` to the PKG_CONFIG_PATH environment variable No package 'gtk+-2.0' found image-viewer.c:1:21: fatal error: gtk/gtk.h: そのようなファイルやディレクトリはありません compilation terminated. 環境はUbuntu11.04です >>618 ありがとうございます でも僕Python3をつかってるので・・・
620 :login:Penguin :2011/05/14(土) 19:25:22.37 ID:Obe5d9n3.net >>619 どうすればいいのでしょうかって、どうすればいいのか自分で貼り付けてるじゃん。 Perhaps you should add the directory containing `gtk+2.0.pc` to the PKG_CONFIG_PATH environment variable あと質問のつもりなら、どのソースをどんな方法でコンパイルしたかくらいは書くべき。
621 :login:Penguin :2011/05/14(土) 20:04:20.32 ID:z2Mrc21j.net >>620 すいません。以後気をつけます それとパスの通し方がわかりません・・・linuxはあまり触ったことがないので
622 :login:Penguin :2011/05/14(土) 20:55:58.32 ID:Jq7jXtDN.net Linuxだと面倒臭くない、という理由だった人間がパスの通し方もわからんとか… 世の中なめてんのか?
623 :login:Penguin :2011/05/14(土) 21:05:27.10 ID:z2Mrc21j.net すいません。日本語でおねがいします
624 :login:Penguin :2011/05/14(土) 21:20:41.50 ID:Jq7jXtDN.net LinuxでGTK+プログラミングしようって人間が日本語でないとだめって… 世の中なんめてんのか?
625 :login:Penguin :2011/05/14(土) 21:28:54.65 ID:agWK3k8h.net ごめん俺も英語ダメ 出来るだけ日本語の情報があるとうれしいw
626 :login:Penguin :2011/05/14(土) 21:35:13.28 ID:z2Mrc21j.net >>624 親のすねかじってるお前よりマシだよハゲ
627 :login:Penguin :2011/05/14(土) 21:45:25.94 ID:Jq7jXtDN.net ,,,,,,,,,,,,,,,,,,,, /": : : : : : : : \ /-─-,,,_: : : : : : : : :\ / '''-,,,: : : : : : : :i /、 /: : : : : : : : i ________ r-、 ,,,,,,,,,,、 /: : : : : : : : : :i / L_, , 、 \: : : : : : : : :i / Yahoo!翻訳したら /●) (●> |: :__,=-、: / < 負けかなと思ってる l イ '- |:/ tbノノ \ l ,`-=-'\ `l ι';/ \ 英語がだめな24・男性 ヽトェ-ェェ-:) -r'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ヾ=-' / / ____ヽ::::... / ::::| / ̄ ::::::::::::::l `──'''' :::|
628 :login:Penguin :2011/05/14(土) 22:10:07.52 ID:TqodLHpv.net GTK以前にOSで躓いてるのか。 だったら分かってるだろうwinでやった方がいいんじゃないの? winはもっと分からないっていうなら仕方ないけど。
629 :login:Penguin :2011/05/14(土) 23:47:30.17 ID:agWK3k8h.net プログラミング系の英文を翻訳したらわけが分からなくなる 原文でわけが分からない方がましなくらいにね・・・ それとは別に ID:z2Mrc21j はもっと謙虚になるべき 下地が出来ていないし質問する場所が悪いし何を聞いたらいいか分かっていない気がする 何でパスを通したいのか分からないけど細かい質問はgoogle先生で検索してみるといいかも
630 :login:Penguin :2011/05/14(土) 23:48:21.53 ID:wLtMCrHN.net >>621 パスの通し方はGTKと全く関係ないLinuxの基礎の基礎なので、スレ違いです。
631 :login:Penguin :2011/05/15(日) 13:51:59.78 ID:cCRv4Dbr.net >>619 aptitude install libgtk2.0-dev gcc `pkg-config --cflags gtk+-2.0 --libs gtk+-2.0` image-viewer.c
632 :login:Penguin :2011/05/15(日) 20:44:42.05 ID:CFcmlqIg.net まあ、パスの通し方でからんでるアホも、 同レベルとみなした方が良さそうではあるがな
633 :login:Penguin :2011/05/15(日) 20:59:22.40 ID:WCLbHSMZ.net それにしてもスレ違いの質問は認めちゃだめだろw グダグダになるぞw
634 :login:Penguin :2011/05/15(日) 21:13:58.77 ID:CFcmlqIg.net グダグダにするぞ!の間違いだろw
635 :login:Penguin :2011/05/15(日) 21:17:53.35 ID:UHIJLo/l.net libgtk2.0-devをインストールしてなかったわ コンパイルできた
636 :login:Penguin :2011/05/15(日) 21:22:41.40 ID:3m8/J1/j.net >>635 怒るでしかしwwww
637 :login:Penguin :2011/05/15(日) 23:53:02.86 ID:IS7vzHtp.net >>634 1. パスの通し方でからんでるアホ 2. スレ違いのグダグダにからんでるアホ 3. >>637 このレス 同レベル。
638 :login:Penguin :2011/05/16(月) 06:50:27.01 ID:HgEV0miS.net Gentooを使うとみみっちい*-devパッケージなんかで 悩まされずにすむんだけどなあ
639 :login:Penguin :2011/05/17(火) 07:03:27.38 ID:17NbAwxj.net HTML5バックエンドにはびびった。 これは、GTK+アプリがサーバーで動いていてクライアントでは<canvas>で 表示しているだけって事かな。 HTML5対応ツールキットとか沢山出てきそうだけど、やっぱりGTK+は最初から 完成度高いものが使えるから、かなりのアドバンテージになるはず。 インストールしなくてもWindows上でGTK+アプリが使える訳だから最高だな。
640 :login:Penguin :2011/05/18(水) 01:14:48.22 ID:zz1Ry4tA.net 既存のGTK+アプリケーションを応用したクラウドサービスの予感
641 :login:Penguin :2011/05/24(火) 08:34:07.83 ID:KqvnTjTM.net GTK+2で、Cairoを用いて一回の描画に非常に時間がかかるもの(例えばマンデルブローとか)を描画して、 GTKのDrawingAreaに表示するにはどうしたらいいんでしょうか? 直接DrawingAreaのGdkwindowにExposeイベント毎に描画するようにすると当然破綻します。 GTK+2だとCairoのSurfaceに描画してそれをPixbufにするというのもできない感じなので困ってます。
642 :login:Penguin :2011/05/24(火) 17:28:30.93 ID:ob7Yh9v7.net GdkPixmapに描画して、ウィンドウ再描画のときはそこから転送する。 むしろGTK+3でGdkPixmapがなくなって、オフスクリーンなpixmapを どうやって持つのか知りたい。 オフスクリーンなGdkWindowというのがあるらしいから それを作ってpixmapとして使えということなのだろうか。
643 :641 :2011/05/24(火) 17:47:47.35 ID:SHDVYoHh.net >>642 ありがとうございます。 使ってる言語のバインディングが+2用なので仕方なく+2を使ってますが、今から使うアプリに GdkPixmapは使いたくないので、他に手段ないでしょうか? +2でも、CairoのSurfaceをGdkWindowにコピー?できるのが理想なんですが。 ちなみに、+3では http://developer.gnome.org/gtk3/stable/ch25s02.html#id1407324 によればCairoのSurface使えってことだと思います。
644 :login:Penguin :2011/05/25(水) 22:49:33.40 ID:ypXSp7WE.net >>643 http://zetcode.com/tutorials/cairographicstutorial/cairoimages/ の「Blind down effect」でできるようですよ 簡単に要約すると 関数cairo_image_surface_createでオフスクリーンなsurfaceを作って、そこに落書きし、 eexposeイベント内で関数cairo_set_source_surfaceを呼び出して落書き結果をコピーするという方法だそうです
645 :login:Penguin :2011/05/26(木) 01:09:20.52 ID:/us7JkTi.net GTK+3とかマジ迷惑なんですけど。
646 :641 :2011/05/28(土) 02:19:42.28 ID:cDNuTVbD.net >>644 ありがとうございます、それでやってみます。
647 :login:Penguin :2011/05/29(日) 20:26:57.86 ID:zJJLH/V3.net GtkTableにアタッチしたウィジェットのパディングを変更したいんですが gtk_table_attach()を変更の度に呼んでも問題ないですか? それともパティングを手軽に変更できる手段って他にあるでしょうか。
648 :login:Penguin :2011/05/31(火) 20:26:42.71 ID:Bc3stUR8.net >>647 GtkAlignmentでどうですか? 例えば、GtkButtonのパッディングを変更できるようにしたいなら、 button = gtk_button_new_with_label( "Button 2" ); align = gtk_alignment_new( 0, 0, 0, 0 ); gtk_container_add( GTK_CONTAINER( align ), button ); gtk_table_attach( GTK_TABLE( table ), align , 1, 2, 1, 2, GTK_SHRINK, GTK_SHRINK, 0, 0 ); でButtonを登録し、 gtk_alignment_set_padding( GTK_ALIGNMENT( align ), 5, 5, 10, 10 ); で調節します。
649 :648 :2011/05/31(火) 20:30:44.34 ID:Bc3stUR8.net >>648 の追記です。 参考にしたURLは http://www.gtkforums.com/viewtopic.php?t=3220 です。
650 :login:Penguin :2011/06/02(木) 12:20:53.31 ID:9ZkW8466.net >>648 ありがとうございます GtkAlignmentでもパディング変更できましたが GtkTableのchildrenの中の該当ウィジェットを格納した GtkTableChildのx/ypaddingを変更することでもできるようです
651 :login:Penguin :2011/06/03(金) 01:41:05.64 ID:UsW+bpf/.net http://hibari.2ch.net/test/read.cgi/tech/1253450199/
652 :login:Penguin :2011/06/04(土) 06:32:58.20 ID:DoiP0avE.net スレッドA,BにおいてAからBを終了させるpthread_close()に相当する処理を行う方法がgtkには無い。
653 :648 :2011/06/04(土) 17:42:05.97 ID:lYXnt5Pq.net >>650 お役に立てずにすみません。GtkTableChildを使った方がスマートですね。 ところで、Gtk 2.0のリファレンスにGtkTableChildクラスの説明がみつからないのですが どこにあるか教えていただけませんか? Gtk 1.0のほうは見つけたのですが、Gtk 2.0の方では見つかりません
654 :login:Penguin :2011/06/05(日) 12:08:13.55 ID:2//sPV3W.net 公式の3.0のリファレンスにも無いですね もしかして直接触っちゃだめなのかもと思ったけど childrenにテーブルの中身がって書いてるしヘッダみろってことなのかも ところで画面解像度の変更やテーマの変更の感知はどのイベントを 受け取ればいいのか教えてください
655 :648 :2011/06/06(月) 22:48:57.79 ID:Rnm0L+uO.net >>654 >>childrenにテーブルの中身がって書いてるしヘッダみろってことなのかも なるほど、そういうことなんですね。 ところで、解像度の変更イベント処理はGdkScreenのsize-changedイベントで処理できます 参考URLは http://www.gtkforums.com/viewtopic.php?p=3643 です。 それとテーマの変更イベントですが、すみませんが僕にはわかりませんでした。 下記のURLによると、テーマ変更時に変化するオブジェクトのイベントを すべて監視すればいいらしいのですが… http://www.gtkforums.com/viewtopic.php?f=3&t=3829&p=10165&hilit=theme+change+event#p10165
656 :login:Penguin :2011/06/06(月) 23:39:42.74 ID:X0ciCI4s.net >>655 ありがとうございます テーマの方はこんな感じでできそうですね ちょっと試してみます https://garage.maemo.org/plugins/ggit/browse.php/?p=modest;a=commitdiff;h=5879161f031517a16b4c516e90700b647cb62b1e + g_signal_connect (G_OBJECT (instance), "notify::style", G_CALLBACK (on_notify_style), (gpointer) instance);
657 :login:Penguin :2011/06/09(木) 00:26:33.80 ID:z+T6y5Hb.net UbuntuLinuxを使っていると、 ラブハンドルになるスクロールバーとならないスクロールバーがあるんだけど違いはなんなの?
658 :login:Penguin :2011/06/10(金) 23:26:43.28 ID:PqNxIzez.net >>656 私のほうでも試して見ましたが、 それでテーマ変更イベントの検出はできるようですね。 しかし、notify::styleイベントがgtkリファレンスに見つからないw 何のイベントなんだろう? >>657 ラブハンドルになるアプリ名とならないアプリ名を書けば、 誰かが調べてくれるかも?
659 : 忍法帖【Lv=5,xxxP】 :2011/06/12(日) 17:23:21.85 ID:JGUSf8uW.net 俺のためのスレはココですか?
660 :login:Penguin :2011/06/12(日) 17:46:23.37 ID:Nl9cfmmH.net >>659 いいえ、違います。
661 :login:Penguin :2011/06/22(水) 01:11:00.53 ID:c+3U0RiB.net debhelpを日本語化するプロジェクトはもう立ち上がっているのでしょうか?
662 :login:Penguin :2011/06/22(水) 01:11:44.45 ID:c+3U0RiB.net devhelpです
663 :login:Penguin :2011/06/28(火) 00:26:26.50 ID:eerWK6Uv.net ttp://mugtug.com/sketchpad/ ↑これ有名なHTML5のデモだけど、 ttp://blogs.gnome.org/alexl/2011/04/18/broadway-update-3/ GTK+3.2がリリースされれば、↑こんな感じに同じ事が出来るようにのか? wktkが止まらない!
664 :login:Penguin :2011/07/01(金) 01:05:56.23 ID:GKt7GreK.net cairoは死んでしまったのか… Firefoxに見捨てられ更新もほとんど無い
665 :login:Penguin :2011/07/01(金) 01:22:39.19 ID:qaXNzYOT.net >>664 gitのログ見たけど更新しまくってね?リリース見ても5月中にも pycairoとかcairommとかバインディング関係が更新あるしcairo自体は既に成熟期だろ それとIDが惜しい
666 :login:Penguin :2011/07/03(日) 08:27:55.42 ID:xZFICtED.net ttp://lists.cairographics.org/archives/cairo-commit/2011-June/thread.html ↑ここ見て少なく感じた。半分近くはコードでないコミットだし。
667 :login:Penguin :2011/08/01(月) 00:38:35.73 ID:rgARQ4qL.net GtkDrawingArea を自分で XCreateWindow して作りたい時ってどうすればいいか教えてください。
668 :login:Penguin :2011/08/02(火) 00:30:46.57 ID:px2Xwp7s.net 自己解決した。 Gdk.X11Screen.lookup_visual () とか使えば、自分で XCreateWindow () する必要とかなかった。
669 :login:Penguin :2011/08/22(月) 09:44:31.31 ID:56fggY27.net GtkEntryCompletion のポップアップの最大高さ?を設定する方法おしえてくだしあ http://up3.viploader.net/pc/src/vlpc008412.png デフォだと↑みたいに画面の高さいっぱい一杯までスクロールバーがついたポップアップが表示されてしまいます
670 :login:Penguin :2011/08/22(月) 12:32:55.24 ID:GUjzssRW.net そんなAPIは無いように見えるから どうしても欲しければ自力でGtkEntryCompletion相当のコードを書くことになるのかなぁ
671 :login:Penguin :2011/08/23(火) 10:55:05.34 ID:fF4RpR06.net >>670 ありがとうございます。 _GtkEntryCompletionPrivate構造体の定義がわからないので諦めました
672 :login:Penguin :2011/08/24(水) 18:38:06.52 ID:CLJ7sudj.net g_signal_connectでコールバック関数に渡せるデータって一つしかないですよね でもどうしても複数のデータを渡したい時ってどうするんですか? 例えば,main関数内でエントリーが3つとボタンがあって, ボタンを押したら3つのエントリーに入力されている文字列をg_printで出力する場合とか 初歩的な質問かもしれないけど,お願いします
673 :login:Penguin :2011/08/24(水) 18:57:38.20 ID:tAkTiKbP.net >>672 構造体とか使って渡したいデータを1変数にまとめて、 コールバック関数にはその構造体のポインタ渡すのはどうかな http://pastebin.com/UXyRbuJf
674 :login:Penguin :2011/08/24(水) 19:04:11.50 ID:CLJ7sudj.net >>673 ありがとうございます やっぱりそれしか無いですか... なんで可変じゃなくてわざわざ一個だけなんだろうなあ
675 :login:Penguin :2011/08/24(水) 19:10:25.09 ID:tAkTiKbP.net 自分でラッパー書いて、可変引数版のg_signal_connectを自由につくってもいいのよ〜 一般的に複数引数渡すよりポインタ1個渡す方が効率的、と考えられてるんじゃないかな 普通は渡したいデータの型も文字列だけじゃないだろうし、Cだと型が予測できない可変引数を処理するのは面倒だと思う
676 :login:Penguin :2011/08/24(水) 19:20:10.95 ID:CLJ7sudj.net >>675 調べてみると可変引数って色々問題あるんですね,知りませんでした ラッパーって言葉も今知りました 勉強になります
677 :login:Penguin :2011/08/24(水) 19:40:28.68 ID:fAbet21j.net >>672 ・そのEntry3つをGHashTable につっこんどいて それをコールバックの引数にする ・そもそもGtkBuilderオブジェクトでつくったUIなら それをcbの引数にする GTK_ENTRY (gtk_builder_get_object (builder, "ボタンの変数名")) で取れる ・前もってそれぞれのEntryにgtk_widget_set_name(entry,"しきべつめい")しといて gtk_container_get_children (GTK_CONTAINER (window)) で取れる GList をcbの引数にする cb関数側でg_list_nth_data つかって先頭からアクセス、gtk_widget_get_name(entry)でとれる名前を確認しながら扱う 三通り思いつきました、どうでしょうか?
678 :login:Penguin :2011/08/25(木) 00:14:37.53 ID:IvAnECIo.net 2.0用コードを3.0でコンパイルしたら、gdk_pixuf_render_to_drawable()で問題発生しました。 main(){ gtk_init(NULL,NULL); GdkPixbuf* pixbuf; GtkWidget* image; gdk_pixbuf_render_to_drawable( pixbuf, image->window, image->style->fg_gc[GTK_STATE_NORMAL], 0, 0, 0, 0, 100, 200, GDK_RGB_DITHER_NONE, 0, 0 ); } gtk+-3,0でコンパイルすると、image->window, image->style, GDK_RGB_DITHER_NONE、の3箇所がエラーになってしまいます。 だれか解決してください。
679 :login:Penguin :2011/08/25(木) 07:33:21.51 ID:3JebkG67.net 3.0の方針として、直接メンバー変数にアクセスしない事になったんで、 それぞれ、set_window, get_window みたいなアクセサ経由に変更すればOK
680 :login:Penguin :2011/08/25(木) 08:20:25.79 ID:Yioj7fNN.net >>678 下記サイト 中段 "GdkDrawable is gone" によると 「GTK+3において GdkDrawable,GdkPixmap,GdkImage は削除された。代わりに cairo_surface_t,GdkPixbuf を使え」 とあります。承知の上での質問でしたらすいません http://developer.gnome.org/gtk3/3.1/ch25s02.html
681 :login:Penguin :2011/08/25(木) 15:58:01.07 ID:67oz2wuj.net >>677 GHashTableを使うのが一番楽そうですね 参考になりました,ありがとうございました
682 :login:Penguin :2011/08/26(金) 09:59:15.55 ID:lIEWgrKL.net dat復帰しろ
683 :login:Penguin :2011/08/26(金) 18:45:59.14 ID:miWeYAjd.net >>679 ,680 どうやらgtk+3は描画の高レベル部分をcairoに置き換えたがってるようなので、 素直にgdkによる描画をcairoで書きなおすことにします。
684 :login:Penguin :2011/08/27(土) 18:18:33.00 ID:rt71f+c2.net まーたスレ一覧dj http://up3.viploader.net/pc/src/vlpc008460.png 今日はグラフを書く練習をしました。部品化はまだ先が遠いなあ orz
685 :login:Penguin :2011/08/30(火) 03:41:36.85 ID:KLnazqo8.net GTK+2で使用可能な2D plotterにはどんなものがありますか? GTK+3にも移行できそうなものでオススメがありましたら教えてください
686 :login:Penguin :2011/08/30(火) 10:24:20.53 ID:5PScM+cr.net あんたの言う「2D plotter」とは何なのかをもうちょっと調べなさいよ 「大判プリンター」で目的に合うならこちらを勧めるよ どうしてもプロッターならその理由が判らないと始まらないし GTK関係ない話にもなる
687 :login:Penguin :2011/08/30(火) 10:55:15.61 ID:9Gn96LUV.net ベクトルDrawとかのライブラリの亊じゃね? gnuplotとかmatplotとかそういうの。 わからい人にはグラフ書くライブラリって言ったほうがいいのかな?
688 :login:Penguin :2011/08/30(火) 11:18:58.63 ID:KLnazqo8.net 仰る通りライブラリのことです、GUIプログラミングのスレでの発言ですからね それじゃ調べたものを書きますね ・plplot5.9.6 古い環境を意識してるのか8-bit色制限?cairoが普通に扱えて且つPostScriptも吐けて好印象 ただ関数群が使いにくい印象 ・GtkExtra3.0.1(beta) の GtkPlot こちらはdemoを動かしただけですが若干もっさり描画? cairoすらwrappingしてるからからか? 他にあればそれも検討してその上で使うものを決定したいのです
689 :login:Penguin :2011/08/31(水) 00:52:22.06 ID:n3SEIKnI.net http://stackoverflow.com/questions/915940/python-plotting-libraries http://wiki.python.org/moin/NumericAndScientific/Plottinghttp://wiki.python.org/moin/NumericAndScientific/Plotting 最近だとRとか使ってるイメージはあるけど この辺昔からあるからね。どうしてもラッパーライブラリは多くなっちゃうよね Q: Does pychart support Windows? Yes. But you need to install Python and Ghostscript beforehand. pychartとかどうかな日本の人だよ名前から判断すると
690 :login:Penguin :2011/08/31(水) 15:52:48.56 ID:STiWeB5m.net >>689 ありがとうございます。出来ればCで使えるGTK+のwidget又はcairo_tに描画できるものでお願いします。。 グラフの枠,軸ラベル,グラフ自身,凡例 これらを書ける関数が用意されてると嬉しいです。cairoでガリガリ書く奴はgnome-system-monitorを参考にして 書きましたが何か違うなと感じました、「もっと楽できるものあるだろう」と Rって言語は初めて知りました。R-devel入れてみましたが GtkDrawingAreaやcairo_tに書く方法が判らず断念しました pychartはpython使う時は使ってみようと思います
691 :login:Penguin :2011/09/06(火) 20:57:43.09 ID:JODXyz/L.net gtk_image関連で、プログラム内でファイルを指定して画像を用意する関数はありますか? gtk_image_new_form_fileなどのように起動するときに指定するのではなく プログラム内で指定したいのです
692 :login:Penguin :2011/09/06(火) 21:09:41.30 ID:h7bDDi3V.net get_image_set_from_file
693 :login:Penguin :2011/09/06(火) 23:45:05.53 ID:JODXyz/L.net >>692 すみません、それの具体的な使い方を教えてもらえないでしょうか? その後に続く()の中には何を入れればいいのでしょうか? devhelpを見ましたが、書いてある通りに入れるとコンパイルエラーが出ます gtkwidget *image; image = gtk_image_set_from_file (GtkImage *image, const gchar *filename); ↑の*filename のところにファイル名を入れるのでしょうか?例えばaaa.png等 *imageのところも何か入れるのでしょうか?
694 :login:Penguin :2011/09/07(水) 00:10:39.05 ID:OQwTGmux.net gtk_image_new_from_fileでなんでだめなの
695 :692 :2011/09/07(水) 00:54:07.56 ID:QF3RPTD4.net >>693 get_ じゃなくて gtk_ ね。俺の書き間違い ttp://wingtk.sourceforge.net/ishan/sliders.html ページ内で gtk_image_set_from_file で検索して
696 :login:Penguin :2011/09/07(水) 01:59:10.86 ID:T6UTzAz+.net >>693 gtk_image_set_from_file()使ってjpegでぱらぱら漫画作った git clone git://git.pf.sourceforge.jp/gitroot/k/ke/kemeco/parapara_manga.git いっしゅのモーションJPEGwww
697 :login:Penguin :2011/09/07(水) 11:01:37.48 ID:s/CIYWHm.net >>696 何かの折にヘッダファイルとして使わせてもらいます
698 :login:Penguin :2011/10/03(月) 10:40:33.28 ID:DltdAdh6.net >>696 さんのリストを一部改変してボタンを押されたら次の画像を表示するというふうにしたいのですが 上手くいきません ボタンのシグナルコネクトをflipという関数に接続したのですが 関数が反応してないようです どうすればいいか教えてください 改変したリストです↓ http://www1.axfc.net/uploader/Sc/so/280374.c
699 :login:Penguin :2011/10/03(月) 10:45:19.78 ID:DltdAdh6.net すいません、元のリストをアップしてしまいました 正しくはこちらです(ファイル名をimage2.cに変えました) http://www1.axfc.net/uploader/Sc/so/280375.c
700 :login:Penguin :2011/10/04(火) 05:43:43.88 ID:OMJjY+ZZ.net >>700 ちょちょと換えてみたから見てみて http://www1.axfc.net/uploader/Sc/so/280675.c devhelpってヘルプビューア入れて GtkButtonの説明読むのおすすめ 「The "clicked" signal」 てとこにclickedシグナルハンドラのシグネチャが書いてあるよ >>699 が元々書いてたハンドラとシグネチャが一致してなかったみたい それと初回クリック時の画像ファイルインデックスは0番じゃなくて1番にしといた
701 :login:Penguin :2011/10/04(火) 05:45:48.43 ID:OMJjY+ZZ.net 指示レス番まちがえたけど 訂正しねーよ!(我が家杉山)
702 :login:Penguin :2011/10/04(火) 12:32:09.76 ID:VseFFwAj.net >>700 動きました、どうもすいません
703 :login:Penguin :2011/10/04(火) 22:44:16.96 ID:OMJjY+ZZ.net 謝る必要はこれっぽっちもないけど 「動けばいい」とかいう低い志は捨てようや
704 :login:Penguin :2011/10/17(月) 00:11:29.94 ID:OFrElfAX.net ボタンを押されたときに、シグナルコネクト先を変更したいのですが if elseで分岐させてみたのですが上手くいきません。(最初に通過した設定がそのまま残って変更出来ない) ボタンを押されたら、シグナルコネクト先を変更するにはどうすればいいのでしょうか?
705 :login:Penguin :2011/10/17(月) 03:57:34.59 ID:jBv5AccH.net >>704 > if elseで分岐させてみたのですが上手くいきません。(最初に通過した設定がそのまま残って変更出来ない) コード見ていないので確かなことは言えませんが、 g_signal_handler_disconnect()とg_signal_connect()を使えばきっと出来ますよ(やってみたら出来た) code snippestでも貼ってくれたらアドバイスもできたかと思いますが情報が不足していましたので 「ボタンを押されたら、シグナルコネクト先を変更する」というサンプルを書いてみました。ので参照みて下さい http://www1.axfc.net/uploader/Sc/so/284339.c main関数内とハンドラ内で共用する変数についての渡し方は ・g_object_set_data()を利用して渡す方法 ・g_signal_connect()の最後の引数にGHashTableを指定して渡す方法 ・大域変数として宣言しておく方法(この程度の場合は悪手かな?) の3通り思いつきましたが1番目の案で記述しました。書き方はいろいろあります
706 :login:Penguin :2011/10/17(月) 17:36:59.12 ID:OFrElfAX.net >>705 ご親切にありがとうございます 解読してみます
707 :login:Penguin :2011/12/26(月) 12:41:35.30 ID:Jg1bu6au.net GTKとcarioとpangoの関係を教えて下さい
708 :login:Penguin :2011/12/27(火) 02:22:40.60 ID:4qSP4mDf.net なんと、全部文字数が奇数です。
709 :login:Penguin :2012/02/12(日) 21:52:16.17 ID:vrKTadjR.net http://toro.2ch.net/test/read.cgi/tech/1329023778/
710 :login:Penguin :2012/03/13(火) 01:46:49.13 ID:3Ugm7oRN.net ウィキ作った http://monobook.org
711 :login:Penguin :2012/03/13(火) 23:30:30.92 ID:XEqUJYrf.net ぼくもつくろっと。
712 :login:Penguin :2012/03/20(火) 06:02:28.11 ID:jPw9I0u0.net http://cairographics.org/ http://cairographics.org/news/cairo-1.11.4/ ぬぉ!死んだと思っていたcairoに新バージョンのニュースが! FirefoxはLinux版も自前のOpenGLレンダラーに移行しつつあるから、 今更4倍速くなったって言っても悲しいけど、GTK+は間違いなくかなり速くなりそうだ。
713 :login:Penguin :2012/03/25(日) 06:47:03.05 ID:Bt4mNkdj.net http://cairographics.org/news/cairo-1.12.0/ cairo-1.12.0がリリースされた。18ヶ月ぶりのメジャーバージョンアップらしい。 個人的にはGTK+の描画がどれだけ高速化されたかが気になるな。
714 :login:Penguin :2012/03/25(日) 09:54:04.27 ID:1P7W2wf1.net >>713 >どれだけ高速化されたかが気になる cairoで何をしようとしてるの?
715 :login:Penguin :2012/03/25(日) 18:58:57.29 ID:3RGnGf+l.net 何をしようとしてるかが関係あるの?
716 :login:Penguin :2012/03/25(日) 21:27:14.92 ID:rI7Awxch.net 正直に白状するが、 glageのuser dataの使い方がわからないまま 実務で開発しちゃったりしてます。
717 :login:Penguin :2012/03/25(日) 21:35:56.39 ID:FgoOLGO6.net あと、ラジオボタンとか、配列可して、コールバック関数を一つに まとめる方法もわからないまま 一個一個書いてます。 とほほ
718 :login:Penguin :2012/03/28(水) 08:35:06.02 ID:ThQeaUjt.net EmacsとかVisual Studioみたいなマルチストロークのキーバインドって GTK+でできますか?
719 :login:Penguin :2012/03/28(水) 11:02:58.95 ID:he0UMBAC.net GTK+はEmacsで使われています
720 :login:Penguin :2012/03/28(水) 20:02:18.92 ID:ThQeaUjt.net GTK+はEmacsではキーイベントの処理に使われていません
721 :login:Penguin :2012/03/28(水) 20:41:18.94 ID:R04800Nw.net ( ゚Д ゚)
722 :login:Penguin :2012/03/29(木) 22:20:44.47 ID:GJB1hQRo.net cairoが高速化ってことはeclipseも早くなるのかね
723 :login:Penguin :2012/03/29(木) 22:37:41.77 ID:CN8scaWa.net anjutaを使ってみたところ gtk_signal_connectだと警告なしでコンパイルできるのに g_signal_connectだと暗黙的関数宣言のエラーになるんですが どうやったら直せるでしょうか?
724 :login:Penguin :2012/04/02(月) 18:01:59.91 ID:BFIgJvs2.net どんな呼び方したのか書いてくれなきゃわからん 一番いい解決方法は DevhelpっていうGUIヘルプビューワ入れて g_signal_connectの説明読むこっちゃ ver.も気にせずに例を書くとシグネチャ違うみたいだねそれが一番幸せになれる
725 :723 :2012/04/03(火) 21:46:17.80 ID:gvKF9Ts9.net よく確認してみたところエラーになるのはgtk_signal_connectのほうで GTK3.0で使われなくなっていて代わりにg_signal_connectを使えと書いてありました http://developer.gnome.org/gtk/stable/gtk-Signals.html#gtk-signal-connect
726 :login:Penguin :2012/04/15(日) 02:03:04.26 ID:Z1/ZfeAU.net threadやmutex関係もgtk_の方は廃止になって、g_の方のみになった。3。0あたりから 基本的な関数はglibに集約して、ツールキット的な関数のみgtk 3で担当するように住み分けされた コンパイルの最中に廃止された関数と表示がでるソースは、いずれソースを書き換えないとビルド不能になる ちなみに最も基本的なlibcでも現在開発ラインの最新版だとgetsが本当にソースから廃止されてるので、getsが使われてるソースをビルドできなくなってる
727 :login:Penguin :2012/04/15(日) 08:43:51.29 ID:khsJyTTq.net ガチで使えないキット(GTK)
728 :login:Penguin :2012/04/22(日) 21:22:17.78 ID:ZPy8N610.net UGS Never use gets().
729 :login:Penguin :2012/05/03(木) 19:08:20.54 ID:2lAo9jqg.net フォントサイズって10.5ptとか小数点で設定できる?
730 :login:Penguin :2012/05/04(金) 06:17:57.12 ID:phIzEGLj.net フォントサイズの指定方法がわかってて 小数点の指定ができるかって疑問なら やってみて自分で確認すりゃいいのに。
731 :login:Penguin :2012/05/04(金) 11:44:12.10 ID:LzE47Zaa.net 型がguintみたいだが
732 :login:Penguin :2012/05/04(金) 14:24:41.51 ID:86E5ktal.net それがどうした
733 :login:Penguin :2012/05/09(水) 14:47:56.27 ID:M8lWcVDx.net Gtk.TreeView.Selection.Mode = Gtk.SelectionMode.Multiple; に変更すると得られるGtk.TreeIterがおかしくなってしまう のですが、Multipleの時はSelection.GetSelectedは使えない のでしょうか?
734 :login:Penguin :2012/05/15(火) 22:46:57.21 ID:PyXbSQll.net Gtk.Label page_label = new Gtk.Label (title); page_label.KeyReleaseEvent += delegate { Console.WriteLine("!"); //←呼び出されない理由を説明してほしい! };
735 :login:Penguin :2012/05/16(水) 07:38:42.69 ID:1Jlqt6RC.net gtk_widget_set_events()
736 :login:Penguin :2012/05/16(水) 21:45:01.79 ID:oMuQxzgz.net GTKは親切ではないなーと楽をしてきただけに思いますw >>735 ありがとうございます しかし、それらしいのが見つかりません
737 :login:Penguin :2012/05/23(水) 21:46:04.65 ID:jdgnkMvj.net GTKのGUIは更新をサボる癖があるようですが 無理やり更新させる方法はないでしょうか?
738 :login:Penguin :2012/05/23(水) 21:50:35.79 ID:jdgnkMvj.net 更新するWidgetを間違えてた! 解決
739 :login:Penguin :2012/06/08(金) 19:02:58.11 ID:BmPo410Y.net Gtk-CRITICAL **: IA__gtk_main_quit: assertion `main_loops != NULL' failed メインループ内でGtk.Application.Quit ();を呼ぶなって事だろうけど 終了させる方法はないのでしょうか?
740 :login:Penguin :2012/06/08(金) 20:38:02.95 ID:6+ZFg73U.net >>739 電源を切れば終了。
741 :login:Penguin :2012/06/09(土) 03:50:44.00 ID:xIQyunsc.net gtk_main_quit()のソースコードを読めば解決。
742 :login:Penguin :2012/06/10(日) 07:41:42.40 ID:NypXeHdm.net >>739 launcher みたいの作ろうとしてるんだろうか… いまいちどういうことなのか判らないんだけど logメッセージを抑制したいなら glib 2.32から http://www.mail-archive.com/geany-devel@uvena.de/msg06039.html G_LOG_LEVEL_CRITICAL log level for critical messages, see g_critical(). This level is also used for messages produced by g_return_if_fail() and g_return_val_if_fail(). ある程度デフォルトだと出力されなくなるみたい onにするときは環境変数G_MESSAGES_DEBUG=allで以前と同じ動作になるらしい
743 :login:Penguin :2012/07/04(水) 15:28:28.70 ID:RZglH82u.net from gi.repository import Gtk
744 :login:Penguin :2012/08/07(火) 21:52:39.08 ID:4kcOLz8m.net このスレ的にはGTKのものをそのまま叩くっていうのは危険なこと?
745 :login:Penguin :2012/08/08(水) 21:32:46.85 ID:heEHx4e5.net 意味わからん。
746 :login:Penguin :2012/08/09(木) 02:30:11.31 ID:IoAeP/Ow.net バッシングだな
747 :login:Penguin :2012/08/09(木) 09:21:30.12 ID:n/9/m8Sd.net え?ラッパーライブラリを介さず直接コールするって意味じゃないの?
748 :login:Penguin :2012/08/09(木) 22:47:55.45 ID:Q1A6/Eca.net >>747 そのとおりです
749 :login:Penguin :2012/08/09(木) 22:57:00.84 ID:P67COA3s.net Exactly
750 :login:Penguin :2012/09/11(火) 19:25:22.84 ID:AmLZmZH+.net 取り敢えずgtk_main_quit()
751 :login:Penguin :2012/11/27(火) 12:00:27.00 ID:Mwv1yHjg.net UbuntuでPyGTKを利用してアプリケーションを作っているのですが、一部パーミッションが与えられていないファイルへの書き込みを行いたいと考えております。 Ubuntu Software Centerからアプリケーションをインストールしようとすると、Authenticateというポップアップが出てきてパスワードを入力するとsudoの様にアプリケーションのインストールができますが、これはどのように実現しているのでしょうか? 自分でも書き込めるようにパーミッションを変更していることを前提にしているのですが、変更方法を知らない人や、一々変更した後にアプリケーションを起動するのが煩わしい人向けに、アプリケーションからsudoのようなことができないかと考えております。
752 :login:Penguin :2012/11/27(火) 23:24:04.63 ID:p3EAvFxY.net >>751 pyは使えないのですが、この話はGTKのスレの質問でしょうかね? Cだったらstatとchmod使うところじゃないかと。
753 :login:Penguin :2012/11/27(火) 23:44:47.91 ID:2Faa51y/.net >>751 もしかして:gksu $ sudo command のかわりに $ gksu command ってやると GUIでパスワード聞かれる
754 :login:Penguin :2012/11/28(水) 00:24:58.73 ID:JU9FPiAT.net 口下手な>>753 は、gksuを参考にlibgksuを使えと言いたいんだな? libgksuのpythonバインディングもあるから安心だって言いたいんだよな?
755 :login:Penguin :2012/11/28(水) 16:35:00.90 ID:a6DQ5WYq.net polkit
756 :login:Penguin :2012/12/02(日) 14:08:52.19 ID:jmMYkF+D.net >>754 ナイス翻訳
757 :login:Penguin :2013/02/09(土) 09:31:18.23 ID:cnWShbXp.net 質問させてください。 gtkmm2.4ベースでプログラムをいじっているのですが、画面操作せずにGtk::Dialogを閉じる方法が分かりません Dialog作成→threadで特定の処理を開始→処理終了→※Dialogを閉じる(画面操作せずに) と言う流れをプログレス表示などをして処理したいのですがrunした後にresponseをしてもhideしてもDialogが消えません 根本的に分かっていないのでしょうが・・・上記のような処理をするにはどうしたら良いのでしょうか?
758 :login:Penguin :2013/03/07(木) 14:11:29.83 ID:QnTnog/x.net こう書く方法ないかな? public class Window :Gtk.Window{ }
759 :login:Penguin :2013/03/07(木) 16:21:44.64 ID:19LddT7Q.net >>758 valaをつかえばいいと思うよ
760 :login:Penguin :2013/03/08(金) 18:55:04.44 ID:Eqvj3fL9.net vala優秀そうだね でもwindowsでも使いまわしたいのでmonoから外れたくない
761 :login:Penguin :2013/03/13(水) 09:34:23.06 ID:EMo1WQCk.net >>760 valaはwindowsでも普通に使える。
762 :login:Penguin :2013/03/23(土) 10:23:11.54 ID:PyYsgXcc.net Gtk::Dialogはon_delete_eventを呼ばないのですか? 処理が途中の場合とかにダイアログを閉じるのを中止したいのですが、何処で中止させたらいいのやら
763 :login:Penguin :2013/03/23(土) 16:14:11.15 ID:oI1eFSYR.net ちょっとチャレンジしてみることにしました FreeBasic導入したら、GTK+とCairoが入っていたので。 ネットとサンプルを参考にしながら、 ちょこちょこと弄ってみます。 お手軽に描写の綺麗なプログラムが書けるってことは素晴らしい。
764 :762 :2013/03/23(土) 16:55:08.61 ID:PyYsgXcc.net 結局add_buttonで追加したボタンを使うのではなく、アクションエリアに普通のボタンを追加し、 connectしたメソッドで処理チェックを行なった後にresponseでIDを投げる事で一応動きは出来たみたいです。 もっと簡単な方法はないですか?
765 :login:Penguin :2013/05/07(火) 16:10:42.57 ID:6dLQJSLO.net ちょっとスレチになるかもなんですけど、GTK使われたアプリをWindowsで自動操作したいのですが WM_LBUTTONDOWNなどで座標を直接指定でやってるんですけどMenuBar以外が反応してくれないです どうすればいいでしょうか?
766 :login:Penguin :2013/05/10(金) 02:01:44.26 ID:Jlh16O1w.net Macで日本語入力が可能になりそう!Windows爆死www Linux憤死wwwwwwwwwwwwwwwww http://engawa.2ch.net/test/read.cgi/poverty/1368116873/
767 :login:Penguin :2013/07/03(水) NY:AN:NY.AN ID:5x5esxXj.net FreeWnn スレッドより: http://toro.2ch.net/test/read.cgi/unix/1084551838/l50 457 :名無しさん@お腹いっぱい。:2012/07/05(木) NY:AN:NY.AN gtk2アプリにkinput2で入力する場合に、kinput2のステータス表示の「[あ]」が 真っ黒になってしまう問題の解決法の俺様メモ。 gtk2のソースの、modules/input/gtkimcontextxim.cの on_status_window_expose_event()関数が変更されたのが原因。 これを、gtk+-2.21.5(以前)のソースのgtkimcontextxim.cに戻せば桶。 modules/input以下のサブディレクトリだけmakeして、 できたim-xim.soだけ置き換えればよい。 ソースにバグありとみた。
768 :login:Penguin :2013/09/23(月) 01:43:22.12 ID:pt1QWlbc.net http://www.tarnyko.net/en/ ここでWindows版のBroadway実行環境を配布してたから試してみたけど 遅くて使いものにならん… asm.jsは良い感じなんで、GTK+アプリをそのままasm.jsにコンパイルして ブラウザで実行出来るようにしてくれたら最高だがな。
769 :login:Penguin :2013/10/24(木) 11:46:06.77 ID:YHoA8g0Q.net 同一アプリ上で、IconViewからFrameとかImageへDrag & Dropって 可能なんでしょうか・・・。 そんな感じのサンプルをご存知でしたら教えてくださいm(_ _)m
770 :769 :2013/10/25(金) 16:54:19.59 ID:2AmnlVsx.net すみません、>>769 は出来るようになりました。 drop側の設定に問題がありました。 ところで、Imageから別のImageへのDrag & Dropは可能なんでしょうか。 Dragしても、IconViewの時のようにカーソルが変化しません・・・。
771 :login:Penguin :2014/05/24(土) 01:19:23.19 ID:3aXipg2f.net pulse() https://developer.gnome.org/gtkmm-tutorial/3.9/sec-progressbar.html https://developer.gnome.org/gtkmm/unstable/classGtk_1_1ProgressBar.html
772 :771 :2014/05/24(土) 09:12:07.41 ID:ESO9FbEd.net >>771 それアクティビティモードというのと違う? ナイトライダーをしたいわけではないんよ・・・
773 :login:Penguin :2014/05/24(土) 12:34:03.59 ID:3aXipg2f.net >>771 ,773 set_fraction() で、その都度増分を変えて、すぐ更新したいってこと? queue_draw() で、PrograssBar の on_draw イベントを呼んでみたら?
774 :771 :2014/05/24(土) 14:58:12.72 ID:ESO9FbEd.net >>773 はい、その通りです。お付き合い頂き有り難う御座います。 queue_draw()を試してみましたが、表示のされ方は変わりませんでした。 試したコードを貼り付けようとしたのですが、行数の制限で書けませんでしたので、部分的に書き込みます。 ググって見ているのですが・・・何かお気づきの点がありましたらよろしくお願い致します。 プログレスバーとボタンを配置し、ボタンが押された時に動くようにしました。 drawBtn.signal_clicked().connect( sigc::mem_fun( *this, &ProgressWindow::on_draw_prog ) ); void ProgressWindow::on_draw_prog() { progBar.set_fraction( 0.0 ); for( int i=0; i<100; i++ ) { progBar.set_fraction( (double)i/100.0 ); // progBar.queue_draw(); sleep( 1 ); } progBar.set_fraction( progBar.get_fraction() + 0.01 ); }
775 :login:Penguin :2014/05/24(土) 16:46:51.13 ID:3aXipg2f.net おそくなってゴメン、こんな感じでどうでしょう? ttp://www.dotup.org/uploda/www.dotup.org5080741.gz.html >>771 であげたチュートリアルのコードをいじったものです。 SpinButton の値を 0 から 100 (%)までの任意の値に変更して "Update" ボタンを押すと ProgressBar の状態が変化します。 examplewindow.cc の on_button_update を見れば分かるかと思います。
776 :login:Penguin :2014/05/24(土) 17:31:46.88 ID:3aXipg2f.net あれ? queue_draw() いらねーな。w
777 :771 :2014/05/24(土) 22:15:14.18 ID:SrMGc3rQ.net >>775 コードまで書いて頂き有り難う御座います。 コンパイルして動作を見ましたら、進捗状況の変化を確認できました。 しかしながらon_button_update内で下記コードのようなループを回しset_fractionするようにしてみましたら 相変わらず最後の表示だけするようです。実際の処理ではループを回して進捗状況をset_fractionします。 む〜もう少しネットをあさってみます。 void ExampleWindow::on_button_update() { m_ProgressBar.set_fraction( 0.0 ); for( int i=0; i<100; i++ ) { m_ProgressBar.set_fraction( (double)i/100.0 ); m_ProgressBar.queue_draw(); sleep( 1 ); } }
778 :771 :2014/05/24(土) 23:11:20.28 ID:SrMGc3rQ.net なんかそれっぽい動きになったけどこれでいいのかね・・・イベント強制執行みたいな [変更前] m_ProgressBar.queue_draw(); sleep( 1 ); [変更後] usleep( 50000 ); while( Gtk::Main::events_pending() ) Gtk::Main::iteration( true );
779 :login:Penguin :2014/05/24(土) 23:56:02.23 ID:3aXipg2f.net タイマー使って処理させるとか http://www.dotup.org/uploda/www.dotup.org5081764.gz.html
780 :771 :2014/05/25(日) 10:38:49.48 ID:OwNsCCvJ.net タイマーか〜処理がスパゲッティーになりかけているから使いづらいんだよね アクティビティモードの時は使いやすそう。 今少し弄っているんだけど、set_pulse_stepでステップ量設定しても反映されないな
781 :login:Penguin :2014/05/25(日) 13:02:49.60 ID:ujxKETx8.net http://stackoverflow.com/questions/8340238/gtk-window-stalling-when-using-windows-sleep
782 :login:Penguin :2014/06/08(日) 10:20:05.83 ID:kFAavqfc.net ComboBoxでドロップダウンアイテムを選択した時に発生する イベントってなに?
783 :login:Penguin :2014/06/08(日) 17:33:49.75 ID:lVyy6Wyn.net signal_changed()
784 :login:Penguin :2014/09/22(月) 18:34:36.01 ID:eWn3ghjY.net 本当は先にこっちへ書くべきだった。 gtk_mode gtk_fashion gtk_style gtk_pattern
785 :login:Penguin :2014/10/03(金) 20:31:58.89 ID:3j8hGaDn.net みなさん、人工言語の 高級低級の長所短所のチンチンはご存知?
786 :login:Penguin :2014/10/04(土) 21:22:31.83 ID:PLRFhsu2.net >>785 日本語でOK
787 :login:Penguin :2014/10/05(日) 09:12:43.76 ID:6cVZzLYB.net 技術系スレには自分で人口無能を作っちゃう人もいるからな。 >>785 が人間とは限らないよ
788 :login:Penguin :2014/10/05(日) 12:54:17.13 ID:8NkrJ1Fe.net かわいいかっぽれ
789 :login:Penguin :2014/10/05(日) 14:16:26.58 ID:8NkrJ1Fe.net 人の嫌がる事をすすんでしましょう
790 :login:Penguin :2014/12/27(土) 20:58:23.25 ID:FwEwRAao.net すみませんが質問させてください gtkmmでボタンを作りボタンを押された時にソケットで通信しようとしたのですが select関数をした時に「リソースが一時的に利用できません」と出てしまい動きません コンストラクタでselect関数を使うと動くのですが・・・ gtkmmに通信を阻害する要因とか有るのでしょうか?
791 :login:Penguin :2014/12/28(日) 23:07:33.76 ID:aGqgOq87.net 学校の課題でシューティングゲーム作ってるんですが、cairoで表示した複数の画像の手前、奥の位置関係を変えることってできますか?
792 :login:Penguin :2014/12/29(月) 00:51:05.82 ID:13XuaNya.net はい。
793 :login:Penguin :2016/01/23(土) 21:11:40.92 ID:XkMlkiDd.net 昨日からC+GTKでプログラム作ってるんだけど質問。treeviewでリスト表示してる状態で、キー入力すると、 なんか入力ボックスが開いて入力させるんだけど、これを止めさせる方法がわからない 表示だけさせたいんで、編集できるかも?って感触を持たせたくない エラー表示させる積りはないけど、無視したい 多分、単純な事なんだろうけど...
794 :login:Penguin :2017/02/04(土) 12:26:02.78 ID:KMsE1Vqa.net >>793 既に解決してるかもしれないけど GtkTreeViewのプロパティにある「検索可能」フラグをOffにすればよいみたい
795 :login:Penguin :2017/02/12(日) 13:51:10.49 ID:+yRaNQxe.net g++ (GCC) 6.3.1 20170109、gtkmm 3.22.0でフォントの描画画像を取得するテストプログラムを 作っているのだけど Gdk::Pixbuf::create( get_window(), 0, 0, get_width(), get_height() ); で取得した画像がon_drawで描く前の状態を取ってきているみたいで一つ前の表示になってしまいます on_drawで描画した後の画像を取得するにはどうしたら良いでしょうか? (set_double_bufferedも疑ったのですがこちらは関係ないような気がします) 提示する情報が分からず情報不足かも知れませんが宜しくお願いします
796 :796 :2017/02/12(日) 17:47:04.39 ID:+yRaNQxe.net コールバック関数内で描画に関わる関数を呼んで、その次にPixbufを取り出す関数を読んでたのですが どうもコールバック関数が終わるまでイベントが処理されないようでした 強制的にイベントを処理する下記コードを追加して上手く動く様になりました while( Gtk::Main::events_pending() ) { Gtk::Main::iteration( true ); usleep( 1000 ); } 出来ればDrawingAreaに描画しなくてもPixbufを取り出せると良いのですが・・・ (Pango::Layoutあたりから直接画像イメージを作れないでしょうか)
797 :login:Penguin :2017/05/24(水) 13:46:02.74 ID:TLlefqX7.net GTKってどうなの? GTKかQtkかなんやんでQtにしたんだけど(当時kdevelopってQtの開発環境があったんだよね、今もあるけど)。
798 :login:Penguin :2017/05/24(水) 14:19:50.72 ID:pbxEBOft.net 今からやるならQtのほうがいいんでね? これからGTK+4で阿鼻叫喚になるのと対照的に、Qt5へ移行したばっかだし
799 :login:Penguin :2017/05/24(水) 14:29:06.20 ID:TJNNAVtb.net >>797 ウインドウ内でうねうね動かせて視覚効果高いのがのがQt。Qtならゲームも作れる。 そうゆうの全く無理で地味でも、ちょうど良いコンパクトサイズのボタン等が充実しててツール作ったりするのに適してるのがGTK。
800 :login:Penguin :2017/05/24(水) 18:53:21.69 ID:cGg4zBc+.net GTK+4以降では、「安定なAPI体系はハナから持たない」って認識でいいの? ffmpegのように絶え間なくAPIが変化し続けることになる? で、バージョン番号もブラウザのようにうなぎ上りになるのか
801 :login:Penguin :2017/05/24(水) 20:06:41.07 ID:PSOKRtb/.net https://blogs.gnome.org/desrt/2016/06/13/gtk-4-0-is-not-gtk-4/ 2年ごとにメジャーバージョン更新 最新のメジャーバージョンは開発中につき不安定 各メジャーバージョンの最終版=安定版としたいらしい
802 :login:Penguin :2017/05/24(水) 22:24:13.70 ID:0wlGVdsK.net なるほど ffmpegほどキ○ガイな方針ではないのね
803 :login:Penguin :2017/06/24(土) 15:36:13.60 ID:J/+rjWu3.net java の JList みたいなことはできる? どういうのかというと、参考画像 https://docs.oracle.com/javase/tutorial/figures/uiswing/components/NameChooserMetal.png リストのアイテムがテーブル上に並んでいて、 上下左右にカーソル移動できる。 GTK だとないかな?
804 :login:Penguin :2017/06/24(土) 17:57:54.57 ID:cdtIIsj7.net IconViewをラベルだけで使うみたいなもんかね Pythonですまんが from gi.repository import Gtk from gi.repository import GObject bname = ["Arlo", "Cosmo", "Elmo", "Hugo", "Jethro", "Laszlo", "Milo", "Nemo", "Otto", "Ringo", "Rocco", "Rollo"] model = Gtk.ListStore(GObject.TYPE_STRING) for n in bname: t = model.append() model.set(t, 0, n) view = Gtk.IconView(model) view.set_text_column(0) win = Gtk.Window() win.add(view) win.show_all() win.connect("delete-event", Gtk.main_quit) Gtk.main()
805 :804 :2017/06/26(月) 15:14:10.11 ID:y5aZk+CQ.net >>804 なるほど、IconView でテキストか。 できたできた、 どうもありがとう!
806 :login:Penguin :2017/07/04(火) 04:00:58.40 ID:Rpvk2+Dl.net gtk勉強しようかと思うんだけどもうオワコン? でもQtバインディングよりgtkバインディングのほうが多いしなぁ... gtk4で大幅に進化したりしないかな
807 :login:Penguin :2017/07/04(火) 13:24:32.59 ID:8Z5Rtw2V.net 両方やってみればいい 考えてるほど時間も労力も掛からないよ
808 :login:Penguin :2017/07/11(火) 15:53:30.96 ID:9jKfhw2z.net window のサイズをいい感じ?にできる関数があるか、 お知恵を拝借。 (1) やったこと GtkWindow に対して、GtkToolbar しか置いてない。 toolbar に、gtk_toolbar_insert() でボタンを4つ横並びに置く。 window のサイズは未指定。 (2) 動作確認 右の方のボタンが矢印でまとめられて? メニューみたいに表示される。 (横幅を広げると、横並びに表示される) (3) 所感 相当前に gtk_toolbar_append_element() (deprecated) 等で 配置したときは、横並びに表示されて、 window のサイズはちょうどいい具合に表示されていた(ように思う)。 ボタンが、矢印でまとめられないで、横並びに表示されるように window のサイズをいい感じ?にできる関数がある? (意味わかんなかったらゴメンw) gtk_widget_set_size_request() でざっくりで指定しないとダメかなあ。
809 :login:Penguin :2017/07/11(火) 21:23:00.28 ID:w3xO5s8F.net >>808 直接の答えは分からないけど、何の工夫もせずにやったらボタンが4つ並ぶ状態で起動すると思う public class ToolbarTest : Gtk.Window { public ToolbarTest () { destroy.connect (Gtk.main_quit); var tb = new Gtk.Toolbar (); foreach (var n in new int[] {1,2,3,4}){ tb.add (new Gtk.ToolButton (null,@"Button$n")); } add (tb); show_all (); } public static int main (string[] args) { Gtk.init (ref args); new ToolbarTest (); Gtk.main (); return 0; } }
810 :login:Penguin :2017/09/24(日) 13:44:57.02 ID:AWmycg5C.net toolbar に付いている「つまみ」 (アプリでよくある「toolbar を固定する」みたい感じなのをオフにすると現れる、持つ部分?) あれは GTK+ では、どうやって出すのでしょうか?
811 :login:Penguin :2017/09/24(日) 23:45:06.00 ID:PwTxDy1k.net GtkHandleBoxならdeprecatedだぞ
812 :login:Penguin :2017/09/25(月) 09:15:38.26 ID:bLbAubVC.net VTEのspawnなんとかのAPIはいつになったらファイナライズされるのかね(怒
813 :login:Penguin :2017/10/05(木) 21:14:42.06 ID:c3KsIY0h.net gtk4が気になってgtkの勉強始めようと思うんだけど初心者は何から始めるのがおすすめでしょうか?
814 :login:Penguin :2017/10/10(火) 12:36:19.63 ID:d/a7Ir8S.net python3+gtk3で作るに際し IDE (統合環境)みたいなのってある? そう大げさなものでなくてよくて コード補完(gtkのメソッドの)が 出来ればいいかなぐらいの感じなんだけど もしくは大抵何が使われているのか
815 :login:Penguin :2017/10/10(火) 15:06:28.56 ID:6wfTcDmJ.net pycharm
816 :login:Penguin :2017/10/10(火) 15:07:12.53 ID:6wfTcDmJ.net あるいはvscodeにpythonプラグイン入れれば出来るかな
817 :login:Penguin :2017/10/10(火) 21:08:41.65 ID:d/a7Ir8S.net >>815-816 thank you
818 :login:Penguin :2017/10/15(日) 20:41:28.01 ID:IZYKuyT8.net 補足だけどpycharmでgtkの補完を行うにはちょっとした作業が必要みたい https://stackoverflow.com/a/33646560 vscodeのほう(というかjediという補完ツール)も何かしら方法はあるっぽい?
819 :login:Penguin :2017/11/01(水) 06:36:53.25 ID:6RRJjvM+.net #include <gtk/gtk.h> #include <gdk/gdk.h> #include <cairo.h> #define BITMAP_WIDTH (600) #define BITMAP_HEIGHT (600) GtkWidget *window; GtkWidget *darea; GtkWidget *vbox; GtkWidget *hbox; GtkWidget *button01; GThread* thread; volatile int execflag01; int count; int time_count; static void do_drawing (cairo_t *, GtkWidget * widget); struct { cairo_surface_t *image; } glob; static gboolean on_draw_event (GtkWidget * widget, cairo_t * cr, gpointer user_data) { cr = gdk_cairo_create (gtk_widget_get_window (widget)); do_drawing (cr, widget); cairo_destroy (cr); return FALSE; }
820 :login:Penguin :2017/11/01(水) 06:37:32.12 ID:6RRJjvM+.net 続き static void do_drawing (cairo_t * cr, GtkWidget * widget) { gfloat screen_width; gfloat screen_height; gfloat image_width; gfloat image_height; gfloat x_scaling; gfloat y_scaling; /* ディスプレイの全画面の大きさを取得 */ screen_width = gdk_screen_get_width (gdk_screen_get_default ()); screen_height = gdk_screen_get_height (gdk_screen_get_default ()); /* イメージの大きさを取得 */ image_width = cairo_image_surface_get_width (glob.image); image_height = cairo_image_surface_get_height (glob.image); x_scaling = 1.0; y_scaling = 1.0; cairo_scale (cr, x_scaling, y_scaling); cairo_set_source_surface (cr, glob.image, 0, 0); cairo_paint (cr); }
821 :login:Penguin :2017/11/01(水) 06:37:57.41 ID:6RRJjvM+.net 続き static void load_image () { cairo_t *ic; glob.image = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, BITMAP_WIDTH, BITMAP_HEIGHT); ic = cairo_create (glob.image); //長方形の描画 { //色の指定(外枠:Red,Green,Blue) cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); //長方形(x,y,width,height)を描画 cairo_rectangle(ic, 0.0, 0.0, BITMAP_WIDTH, BITMAP_HEIGHT); //長方形の外枠を作る cairo_stroke_preserve(ic); //色を指定(塗りつぶし:Red,Green,Blue) cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); //長方形を塗りつぶす cairo_fill(ic); cairo_stroke (ic); } cairo_destroy (ic); }
822 :login:Penguin :2017/11/01(水) 06:38:38.92 ID:6RRJjvM+.net 続き static gpointer thread_func( gpointer data){ cairo_t *ic; int i; ic = cairo_create (glob.image); { cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); cairo_rectangle(ic, 0.0, 0.0, BITMAP_WIDTH, BITMAP_HEIGHT); cairo_stroke_preserve(ic); cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); cairo_fill(ic); } cairo_stroke (ic); for (i = 0; i < count; i++) { gdk_threads_enter(); { cairo_set_source_rgb(ic, (i % 256) / 256.0, 0.0, (i % 256) / 256.0); cairo_rectangle(ic, 0.0, (double)i, (double)BITMAP_WIDTH, 1.0); cairo_stroke (ic); } gdk_threads_leave(); gtk_widget_queue_draw(darea); usleep(time_count); } cairo_destroy (ic); execflag01 = 0; }
823 :login:Penguin :2017/11/01(水) 06:39:29.00 ID:6RRJjvM+.net 続き static void on_button01_clicked(GtkWidget *button, gpointer user_data){ GError *error; if (execflag01 == 0) { execflag01 = 1; count = BITMAP_HEIGHT; time_count = 1000; thread = g_thread_create( thread_func, (gpointer)darea, FALSE, &error); } }
824 :login:Penguin :2017/11/01(水) 06:39:49.40 ID:6RRJjvM+.net 最後 int main (int argc, char *argv[]) { load_image (); execflag01 = 0; gtk_init (&argc, &argv); gdk_threads_init(); gdk_threads_enter(); window = gtk_window_new (GTK_WINDOW_TOPLEVEL); gtk_container_set_border_width(GTK_CONTAINER(window), 5); vbox = gtk_box_new(GTK_ORIENTATION_VERTICAL, 5); gtk_container_add(GTK_CONTAINER(window), vbox); darea = gtk_drawing_area_new (); gtk_box_pack_start(GTK_BOX(vbox), darea, FALSE, FALSE, 0); gtk_widget_set_size_request(darea, BITMAP_WIDTH, BITMAP_HEIGHT); button01 = gtk_button_new_with_label("Button01"); gtk_box_pack_start(GTK_BOX(vbox), button01, FALSE, FALSE, 0); g_signal_connect(G_OBJECT(button01), "clicked", G_CALLBACK(on_button01_clicked), NULL); g_signal_connect (G_OBJECT (darea), "draw", G_CALLBACK (on_draw_event), NULL); g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL); gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER); gtk_window_set_title (GTK_WINDOW (window), "Cairo Test"); gtk_window_set_decorated (GTK_WINDOW (window), TRUE); gtk_widget_set_size_request(window, 600, 630); gtk_widget_show_all (window); gtk_main (); gdk_threads_leave(); cairo_surface_destroy (glob.image); return 0; }
825 :login:Penguin :2017/11/01(水) 12:30:43.16 ID:MSa06+/w.net gtkmm っていう C++ のバインディングがあるんだけど,2011 年で 3.0 が出たきり更新の音沙汰がない。 C++ 向けの GTK+ バインディングでおすすめある?
826 :login:Penguin :2017/11/01(水) 13:02:49.11 ID:A1HFLP/N.net 事実上それしかないのでは
827 :login:Penguin :2017/11/01(水) 13:24:04.75 ID:JjdAGBri.net >>825 音沙汰ないのは gtkmm.org だけみたいだよ https://github.com/GNOME/gtkmm/blob/master/NEWS https://developer.gnome.org/gtkmm-tutorial/
828 :login:Penguin :2017/11/01(水) 16:12:00.92 ID:1oQnySzL.net gtkmmはgtk4に向けてc++14対応もしてるっぽいし結構期待してる
829 :login:Penguin :2017/11/01(水) 16:16:36.47 ID:A1HFLP/N.net ぼくも(^o^)
830 :826 :2017/11/01(水) 17:32:31.31 ID:MSa06+/w.net >>826 >>827 ありがとうございます。GNOME のリポジトリはついぞ覗いていませんでした。これで安心して使えます。 しかしパッケージマネージャで入手できる gtkmm が 2.4 と 3.0 というのはちょっと心許ないですね……。 誰か PR 投げてくれないかなぁ〜 (他力本願)
831 :login:Penguin :2017/11/01(水) 18:17:48.95 ID:eYINtNrh.net >>830 2.4とか3.0とかはgtkmmの互換性での番号だと思うけどどうして心許ないの?
832 :login:Penguin :2017/11/01(水) 18:19:19.00 ID:A1HFLP/N.net >>830 ためしに手元のUbunut 17.04 でバージョン見たら Version: 3.22.0-1 ってなっとるでな
833 :login:Penguin :2017/11/01(水) 18:55:06.19 ID:1oQnySzL.net gtk4が出るまでqt勉強する
834 :login:Penguin :2017/11/01(水) 18:56:39.83 ID:1oQnySzL.net gtk4が出たらJD書き直そうや いつまでもgtk2じゃ駄目でしょ 最近のgtkはカラー絵文字にも対応してるようだし
835 :login:Penguin :2017/11/01(水) 19:11:17.65 ID:6RRJjvM+.net >>819 はGTK+3でBITMAPを表示する方法がわからなかったので ネットで調べてとりあえず作ってみたものです それとgtk_widget_queue_draw()をスレッド側で使う場合 下記のようにしないとダメなようです gdk_threads_enter(); gtk_widget_queue_draw(darea); gdk_threads_leave();
836 :login:Penguin :2017/11/01(水) 19:12:33.94 ID:6RRJjvM+.net デモとして違うのも作ってみました >>819-824 のプログラムのthread_func()関数を下のものに差し替えてみてください static gpointer thread_func( gpointer data){ int i, j, col, i1, depth; double xgap, ygap, xx, yy, a1, b1, x1, y1, tmp1, x2, y2; double xcorner, ycorner, length; cairo_t *ic; int count01; struct { double xcorner; double ycorner; double length; } param[8]; param[0].xcorner = -1.785666666666666e+000; param[0].ycorner = -2.508333333333312e-002; param[0].length = 5.000000000000000e-002; param[1].xcorner = -1.759984700520832e+000; param[1].ycorner = -1.518603515624978e-002; param[1].length = 9.765625000000001e-005; param[2].xcorner = -1.759906697591145e+000; param[2].ycorner = -1.515360514322895e-002; param[2].length = 6.103515625000000e-006; param[3].xcorner = -1.759901244004566e+000; param[3].ycorner = -1.515219028790770e-002; param[3].length = 4.768371582031250e-008; param[4].xcorner = -1.759901209723814e+000; param[4].ycorner = -1.515217680089193e-002; param[4].length = 5.820766091346741e-012; param[5].xcorner = -2.112213541666665e-001; param[5].ycorner = -7.939140624999994e-001; param[5].length = 1.562500000000000e-003;
837 :login:Penguin :2017/11/01(水) 19:13:17.37 ID:6RRJjvM+.net 続き param[6].xcorner = -2.238124999999996e-001; param[6].ycorner = -6.581041666666665e-001; param[6].length = 1.250000000000000e-002; param[7].xcorner = -2.137343749999995e-001; param[7].ycorner = -6.554270833333333e-001; param[7].length = 3.906250000000000e-004; ic = cairo_create (glob.image); for (count01 = 0; count01 < 8; count01++) { cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); cairo_rectangle(ic, 0.0, 0.0, BITMAP_WIDTH, BITMAP_HEIGHT); cairo_stroke_preserve(ic); cairo_set_source_rgb(ic, 0.0, 0.0, 1.0); cairo_fill(ic); xcorner = param[count01].xcorner; ycorner = param[count01].ycorner; length = param[count01].length; depth = 1000; xgap = length / BITMAP_WIDTH; ygap = length / BITMAP_HEIGHT; xx = xcorner; yy = ycorner; for(j = 0; j < BITMAP_WIDTH; j++) { ic = cairo_create (glob.image); for(i = 0; i < BITMAP_HEIGHT; i++) { a1 = xx; b1 = yy; i1 = 0; x1 = 0; y1 = 0; x2 = x1 * x1; y2 = y1 * y1;
838 :login:Penguin :2017/11/01(水) 19:13:57.79 ID:6RRJjvM+.net 終わり while ((i1 < depth) && (x2+y2 <=4)) { tmp1 = x2 - y2 + a1; y1 = 2 * x1 * y1 + b1; x1 = tmp1; x2 = x1 * x1; y2 = y1 * y1; i1++; } if (i1 == depth) i1 = 0; else i1++; col = i1; gdk_threads_enter(); cairo_set_source_rgb(ic, (col % 256) / 256.0, 0.0, 0.0); cairo_rectangle(ic, (double)i, (double)j, 1.0, 1.0); cairo_stroke(ic); gdk_threads_leave(); xx = xx + xgap; } yy = yy + ygap; xx = xcorner; if (j % 5 == 0) { gdk_threads_enter(); gtk_widget_queue_draw(darea); gdk_threads_leave(); } usleep(1000); } gdk_threads_enter(); gtk_widget_queue_draw(darea); gdk_threads_leave(); usleep(50000); } cairo_destroy (ic); execflag01 = 0; }
839 :login:Penguin :2017/11/01(水) 20:23:13.63 ID:1oQnySzL.net コードは別のところに貼ってくれ
840 :login:Penguin :2017/11/01(水) 20:39:13.35 ID:A1HFLP/N.net 一般的なペーストビン使えば?
841 :login:Penguin :2017/11/01(水) 20:49:04.40 ID:MSa06+/w.net GTK4 で JD 書き直すの?
842 :login:Penguin :2017/11/01(水) 21:10:52.50 ID:e2sx/G8f.net 2chでコード貼ると権利関係の問題が生じるから 普通は貼らない。 これ常識。
843 :login:Penguin :2017/11/02(木) 07:34:01.28 ID:DIoOuVfO.net GTK+4から>>800-801 の方針らしいので今GTK+使うなら3系が無難だと思う
844 :login:Penguin :2017/11/02(木) 18:51:47.91 ID:hOMy/o9B.net 本来なら、ソフトウェア板のGEditスレで聞くはずなんだろうけど、あまりにあっちのスレは心許ないので、こちらで聞かせて。 まず、GEditでAlt+n(nは1とか2とか3とかの番号)のショートカットキーを入力すると 現在開いてるタブの中から該当する番号のエディタタブをアクティブにしてくれるんだけど。。 https://help.gnome.org/users/gedit/stable/gedit-shortcut-keys.html.en GEditのWordCompletionっていうプラグイン使ってるんだけど、 これはオートコンプリートみたいに単語を入力候補の中から選んで入力支援作業をしてくれるプラグインなんだけど、 数ある候補の内から番号を選択して入力しようと思うとCtrl+Alt+n(nは番号)なんだけど、 GEditの公式ページにはAlt+nで良いって書いてある。 https://help.gnome.org/users/gedit/3.4/gedit-plugins-word-completion.html.en 自分としては使う機会が明らかにWordCompletionの方が多いから、逆の方がスゴイ都合いいんだけど、 現在GEditのショートカットキーを変更するのはスゴイ難しいっぽい(昔はプラグインとかあったみたい)。 ググッて出てくる~/.config/gedit/accel の変更もスゴイ難しい・・・。誰か分かる人がいたら教えて。よろしく。
845 :login:Penguin :2017/11/02(木) 19:59:46.62 ID:88fKOOJi.net >>844 スレ違いと分かってて書くし使ってるディストリやバージョンは書かないし… Fedora25の gedit3.22だとAlt+番号で 候補が出ているときはword選択、出てないときはタブ切り替えになる
846 :845 :2017/11/02(木) 22:59:36.25 ID:hOMy/o9B.net >>845 すみません。まず、スレ違いの点ですが、 ソフトウェア板にLinuxユーザ(GEditはほとんどがLinuxユーザでしょう)がどれだけいるか甚だ疑問ですし(WindowsユーザでGEdit使ってる人はほとんど詳しくないでしょうし、 Linux使いよりも多分詳しくないと思われます)、そういう理由でこちらに質問させてもらいました。 環境によっても違うんですね・・。それは知りませんでした、すみません。 自分はUbuntu16.04LTS、GEditのバージョンは3.18です。 >>845 様のFedora25、GEdit3.22の場合はスゴイ良い動き方をしますね。スゴイ羨ましいです!その様な動作の仕方が理想ですね。。マジで大変うらやましいです。 ご回答ありがとうございました。
847 :845 :2017/11/03(金) 00:02:30.59 ID:RlVX2BAD.net UbuntuSoftwareにあったGEditを3.22だったので、インストールしてみたら 日本語対応まだしてなかったみたいです。 プラグイン選択とかファイル選択ダイアログは全部文字化けです・・。
848 :login:Penguin :2017/11/03(金) 02:45:39.77 ID:PPg57U6Z.net Web ブラウザとかの「名前を付けて保存する」みたいな機能を使用した時に出る, ファイルの名称と保存先を決定できるポップアップダイアログって,どこが出しているか分かりますか? GTK+ のテーマを継承していたり「最近開いた項目」があったりするので GVfs あたりかなと予想しているのですが。 そしてあのダイアログを自分の好きなプログラムに置き換えることは可能でしょうか。
849 :845 :2017/11/03(金) 06:44:11.70 ID:l5oC3qKd.net Ubuntu特有のHUDやらAltでウィンドウメニューをアクティブにする動作のショートカットキーがどうも影響してるみたいです。ショートカットキーを変更してみましたが、時々反映されるまで時間とタイミングがかかるので、もうちょっと待ってみます。ありがとう。
850 :login:Penguin :2017/11/03(金) 11:20:54.57 ID:Nq/vIn19.net >>847 ならubuntuスレで聞くべき案件
851 :login:Penguin :2017/11/18(土) 15:11:28.29 ID:ayWF6KV7.net http://mao.5ch.net/test/read.cgi/linux/1188968326/819-824 のプログラムをPython3のGTK+3で書いてみた 注)半角空白をすべて全角空白にしてあるのでコピペする場合は全角空白を半角空白にしてください import gi gi.require_version('Gtk', '3.0') from gi.repository import Gtk from gi.repository import Gdk from gi.repository import GLib from gi.repository import GObject import cairo import threading import time class Window01(Gtk.Window): def __init__(self): Gtk.Window.__init__(self) self.set_title('Cairo Test') self.set_position(Gtk.WindowPosition.CENTER) self.set_property("width-request", 600) self.set_property("height-request", 630) self.count = 0 self.load_image() self.vbox = Gtk.Box() self.vbox.set_orientation(Gtk.Orientation.VERTICAL) self.add(self.vbox) self.darea = Gtk.DrawingArea() self.darea.set_property("width-request", 600) self.darea.set_property("height-request", 600) self.vbox.pack_start(self.darea, False, False, 0)
852 :login:Penguin :2017/11/18(土) 15:12:15.71 ID:ayWF6KV7.net self.button01 = Gtk.Button() self.button01.set_label('Button01') self.vbox.pack_start(self.button01, False, False, 0) self.button01.connect('clicked', self.button01_clicked) self.darea.connect('draw', self.on_draw_event) self.connect('delete-event', Gtk.main_quit) def on_draw_event(self, drawingarea, cr): self.do_drawing(drawingarea, cr) def do_drawing(self, drawingarea, cr): screen_width = Gdk.Screen.get_width(Gdk.Screen.get_default()) screen_height = Gdk.Screen.get_height(Gdk.Screen.get_default()) image_width = self.image.get_width() image_height = self.image.get_height() x_scaling = 1.0; y_scaling = 1.0; cr.scale(x_scaling, y_scaling); cr.set_source_surface (self.image, 0, 0); cr.paint (); def load_image(self): self.image = cairo.ImageSurface(cairo.FORMAT_ARGB32, 600, 600) ic = cairo.Context(self.image) #色の指定(外枠:Red,Green,Blue) ic.set_source_rgb(0.0, 0.0, 1.0) #長方形(x,y,width,height)を描画 ic.rectangle(0.0, 0.0, self.image.get_width(), self.image.get_height()) #長方形の外枠を作る ic.stroke_preserve()
853 :login:Penguin :2017/11/18(土) 15:12:48.56 ID:ayWF6KV7.net #色を指定(塗りつぶし:Red,Green,Blue) ic.set_source_rgb(0.0, 0.0, 1.0) #長方形を塗りつぶす ic.fill() ic.stroke() def button01_clicked(self, button01): self.thread = threading.Thread(target=self.thread_func) self.thread.start() def thread_func(self): ic = cairo.Context(self.image) for i in range(0, self.image.get_height()): Gdk.threads_enter() ic.set_source_rgb((i % 256) / 256.0, 0.0, (i % 256) / 256.0) ic.rectangle(0.0, i, self.image.get_width(), 1.0) ic.stroke() Gdk.threads_leave() Gdk.threads_enter() self.darea.queue_draw() Gdk.threads_leave() time.sleep(0.001) GObject.threads_init() Gdk.threads_init() Gdk.threads_enter() window = Window01() window.show_all() Gtk.main() Gdk.threads_leave()
854 :login:Penguin :2017/11/18(土) 15:40:31.44 ID:b18MsuCQ.net >>851 2chにコードを貼ると権利が2ch側に譲渡されるのでpastebinなどを使いましょう。
855 :login:Penguin :2017/11/19(日) 03:25:08.61 ID:s1HDk3bJ.net 一般的なペーストビン使ったらいいと思う
856 :login:Penguin :2017/11/23(木) 09:36:01.93 ID:0dqzQ9+I.net >>836-838 をPythonで書いてみました コードは下のサイトで公開してます https://pastebin.com/94SpaGgM PyGObjectを各プラットフォームにインストールするには http://pygobject.readthedocs.io/en/latest/getting_started.html
857 :login:Penguin :2017/12/25(月) 03:03:03.86 ID:gvoWVmMo.net 初歩的な質問ですみません。 glade3.18、C言語(初級の本を読んだ程度の知識です)を使用しています。 起動したgladeの右側のプロパティ画面で、 window1 GtkWindow □|__scrolledwindow1 GtkScrolledWindow □□|__viewport1 GtkViewport □□|____image2 GtkImage のように配置し、scrolledwindow1の全般タブのminimum content width と minimum content height に整数値を入れる事で、window1はマウスでの画像拡大縮小(ドラッグで)が出来る事は確認出来ました。 次に、 window1 GtkWindow □|__box1 GtkBox □□|__scrolledwindow1 GtkScrolledWindow □□□|__viewport1 GtkViewport □□□|____image2 GtkImage □□□|button1 GtkButton と変更すると、画像部分のスクロールは可能なものの、button1を含めたwindowの拡大縮小(ドラッグ)が上手くいきません。 ファイルダイアログの様に、OKボタンやキャンセルボタンをドラッグする事で、ボタンも一緒に下に動く様にするには、どうしたらいいのか悩んでいます。 box1の設定で見逃している部分があると思い調べているのですが見つかりませんでした。 どうすれば解決するのか教えてください。
858 :login:Penguin :2017/12/25(月) 03:19:48.60 ID:gvoWVmMo.net 858です。ソースは以下のものです。 #include <gtk/gtk.h> #include <stdlib.h> static void cb_button_clicked ( GtkWidget *Button1 , gpointer user_data ) { gtk_main_quit (); } int main(int argc, char *argv[]) { GtkBuilder *builder; GObject *window1; // GtkWidget *Button1; gtk_init(&argc,&argv); builder = gtk_builder_new(); GError* error = NULL; if ( !gtk_builder_add_from_file(builder, "test17.ui", &error) ) { g_warning("Couldn't load builder file: %s", error->message); g_error_free(error); exit(1); } gtk_builder_add_from_file(builder, "test17.ui", NULL); gtk_builder_connect_signals(builder, NULL); window1 = gtk_builder_get_object(builder, "window1"); gtk_widget_show_all(GTK_WIDGET(window1)); gtk_main(); return 0; }
859 :login:Penguin :2017/12/25(月) 06:27:37.33 ID:gvoWVmMo.net 858です。 window1 GtkBox |__box1 GtkBox |____textview1 GtkTextView |____viewport1 GtkViewport |______button1 GtkButton textview1のパッキングタブで、展張をONで試したら上手くいきました。 画像ファイルが失敗した理由は分かりませんでしたが、他のwidgetでは成功しました。
860 :login:Penguin :2017/12/25(月) 06:29:41.36 ID:gvoWVmMo.net ×…window1 GtkBox ○…window1 GtkWindow
861 :login:Penguin :2017/12/28(木) 23:15:58.83 ID:3uyy4+Dz.net Gtkmmってあんなに良いのに、なんで全然流行ってないの・・?VisualC++はおろか、Qtなんかよりよっぽど良いじゃん。 もっとはやってクレヨン!!他のC++GUIライブラリがあるか知らんが、VC#、VC++、Qtより俺は断然遥かに好きだな。 簡易言語は面白くないので、無しで。VB6くらいやっててワクワクするぜ!
862 :login:Penguin :2017/12/29(金) 13:15:34.46 ID:S/CsVkMC.net 誰でも簡単にパソコン1台で稼げる方法など 参考までに、 ⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。 グーグル検索⇒『宮本のゴウリエセレレ』 L23RPOWZ2H
863 :login:Penguin :2018/01/02(火) 03:40:15.04 ID:F38ZCjdE.net こんなウィジェットある? http://i.imgur.com/yv4NM3z.gif http://i.imgur.com/p7R46pB.gif
864 :login:Penguin :2018/01/02(火) 10:19:34.46 ID:SmVe6Gd0.net >>863 面白いな
865 :login:Penguin :2018/01/02(火) 12:28:18.29 ID:ejbpDk09.net >>863 一つ目の方なら頑張れば使えそうな気がするけど2つ目は無理ゲー ミュートできないじゃん
866 :login:Penguin :2018/01/02(火) 16:36:35.82 ID:BIlvYLfT.net 普通にスタイル変えたスライダーに見える
867 :login:Penguin :2018/01/15(月) 17:16:03.76 ID:fkabkrJp.net >>792-793 2015年書き込み 0 >>794 2016年書き込み 1 2017年 68 何故か2017年はGTK+大躍進の年だった!!!!
868 :login:Penguin :2018/01/28(日) 23:35:06.91 ID:iGCLkti0.net あの、すごく素人な質問なんだけど、 GTK+3ってGNOMEが主に採用してるツールキットだよね。 ということは、ウィンドウの装飾がGNOMEデスクトップのそれになるってことかな。 上下に幅が広いウィンドウタイトルは嫌なんだけど、どうなんだろう。あの高さって調整できるんだろうか。
869 :login:Penguin :2018/01/29(月) 00:03:00.38 ID:GKNlaBKy.net テーマに従う
870 :login:Penguin :2018/02/04(日) 14:47:47.61 ID:QeG1ckHC.net TextViewのテスト用に作ってみました ソースコードはpastebinに貼り付けてみました エラトステネスのふるい Python版 https://pastebin.com/7T8BThMJ エラトステネスのふるい C言語版 https://pastebin.com/egnHWyCJ >>856 にTextViewを追加してみました マンデルブロート集合 Python版 https://pastebin.com/gnfUsgtJ マンデルブロート集合 C言語版 https://pastebin.com/EDZcmy53
871 :login:Penguin :2018/02/06(火) 19:44:30.02 ID:LsU5FPdR.net >>870 はGTK+3でPythonはPython3です PyGObjectを各プラットフォームにインストールするには下のURLを参照してください http://pygobject.readthedocs.io/en/latest/getting_started.html C言語版の方はUbuntuやDebianなら下のようにすればGTK+3が入ります sudo apt-get install libgtk-3-dev コンパイルは下のようにやります gcc test01.c -o test01 $(pkg-config --cflags --libs gtk+-3.0) (ここでtest01.cはC言語のソースファイル名 test01は実行ファイル名なので任意の名前に変更してください)
872 :login:Penguin :2018/02/12(月) 22:22:17.34 ID:+qmPP7OK.net FontForge っていうアプリケーションって GTK テーマには対応してないんですか? 黒系のテーマにしてるんですけど,FontForge には反映されてないっぽいんですが…
873 :login:Penguin :2018/02/27(火) 22:26:33.46 ID:KMCxop2+.net >>870-872 皆さん、お疲れ様です。 Gtkも面白くて最初けっこうやったけど、なんしろ参考書籍が少なすぎる・・。 特にGtkmmに至っては0・・・。ネットのドキュメントや英語サイトを貪っても情報量は少ない・・・ Gtk面白いから、書籍が出ればもっと人気でるんだろうけどなあ・・・ Qtでさえ、分厚いオライリーの本2冊と小さい本とQtQuickの本がある。 まぁQtQuick以外はQt4対応だけど、Ubuntu入れてれば、apt-get で QtCreator込のQt4環境が 余裕で手に入るからなあ・・・ もちろんQt5環境も簡単に手に入るけど・・・ GtkもPythonバインディングやRustバインディングもあるんだし、だれかなんとかして書籍だしてくれないかな・・
874 :login:Penguin :2018/02/27(火) 22:42:01.38 ID:SXflemsb.net PC初心者時代は書籍をありがたがったけど数年でその時期は去ったな マニュアル類を読めば大抵のことは書かれてるから基本的に書籍いらんしな
875 :login:Penguin :2018/02/27(火) 22:44:20.35 ID:vsNBSr66.net まあこう言った理由で新しい人は入って来ず、結果流行らない訳ですw
876 :login:Penguin :2018/02/28(水) 03:42:44.26 ID:c4j2ATnA.net 新しい人はチュートリアルやっておけば取っ掛かりは十分だよね
877 :login:Penguin :2018/02/28(水) 21:05:10.44 ID:M8ckEWeS.net >>873 書籍にまとめるにはある程度の範囲に渡って網羅し、記述に矛盾が無いことが求められる 作成コストが高い それよりも、ユーザが気になっている部分を1つずつ調べて、分かった所があればブログ等にまとめればよい 無矛盾性が要求される範囲が小さくなるので作成コストを低く出来る 広まってほしいと思うのなら、使っている人間が一人一人動かないとどうしようもない
878 :login:Penguin :2018/03/02(金) 18:43:51.79 ID:VWhGnlbA.net みんなばらばらのLinuxの世界
879 :login:Penguin :2018/03/08(木) 11:46:28.58 ID:ZZm3j3TZ.net た、多様性は正義だから…(震え声) でもgtkmmの文書の少なさはちょっと異常な気がする。使われてる規模に比べてね。
880 :login:Penguin :2018/03/22(木) 22:15:22.48 ID:okeyq8e9.net Mousepadって[Alt]キーを押しながら開くメニューの上で項目を選択して、 [Ctrl]+[<anykey>]とやるとその項目にそのショートカットが割り当てられるんだな。 これGtk+3の機能なのかな。他のXfce4使ってるんだけど、アプリケーションではならんかった。
881 :login:Penguin :2018/05/22(火) 07:49:24.99 ID:Czl6p0FW.net 僕の知り合いの知り合いができた副業情報ドットコム 関心がある人だけ見てください。 グーグルで検索するといいかも『ネットで稼ぐ方法 モニアレフヌノ』 JG11H
882 :login:Penguin :2018/06/07(木) 14:43:39.32 ID:63GNIF9F.net すみません。GtkからMySQLやSQLiteに接続したいと思ってるんですが、 普通にLinuxプログラムでMySQLなどに接続する方法もあるけど、GNOMEDBっていうのもあるらしく GtkやGtkmmから接続しようとすると、どうもGNOME側はGNOMEDBを使えみたいな感じがするんですが 参考URLも外国語含めて少ないので、困っています。 普通のLinuxプログラムでデータベースに接続するような感じでGtkから使ってみてもいいですよね?
883 :login:Penguin :2018/06/15(金) 15:09:38.02 ID:uRfp5dHV.net Gtk+を勉強してると外国語も含めて情報ページが少ないんですよ。 でね、やってるうちにGtkmmもPyGtkも覚えちゃうんですよw さすがに、LispやRustのGtkバインドとかまでは手を出さないけど、出してみてもいいっか。
884 :login:Penguin :2018/07/18(水) 04:16:12.46 ID:IgF5ypZG.net ファイルに関連付けられているアイコンを取得する方法ってないですか? FileChooserDialogでファイルのところにアイコン表示されているものでいいです。 アイコン取得の機能さえ公開されていれば簡単にできそうな気はするのですが、見つけられませんでした。。。
885 :login:Penguin :2018/11/08(木) 13:15:12.33 ID:0k996jQ5.net >>884 ファイルマネージャにもよるんじゃね?
886 :ino :2019/04/21(日) 11:23:51.84 ID:ESbqs5Hs.net Gtk.ComboBoxText() の下に Gtk.Entry() が幾つか横に並んでいる GUI を作ろうとしていて苦戦してます。 と言うのは、上のコンボの選択に応じて、エントリーの数など、下の内容を変えたいのです。 アドバイスをもらえると助かります。キーワード、これを調べろ等でもありがたいです。 また、例などご存知ないでしょうか? 私は python3 + GTK+3 ですが、それに限らないです。
887 :login:Penguin :2019/04/22(月) 00:01:33.32 ID:M+dAYxMq.net ウィジェットAの操作でウィジェットBを変更する事はGTK+で可能でしょうか?
888 :login:Penguin :2019/09/24(火) 21:04:36.04 ID:aSWZYMiy.net 「Clion」ってIDEで、GTK+を扱えるらしいけど これって画面デザインとかできるの? 2万でできるわけねえなあ...
889 :login:Penguin :2019/11/28(木) 12:13:56.02 ID:kw29DPG6.net UbuntuでWebViewを使ったPGを作ろうとしていますがうまくいきません。 monodevelopにlibwebkit2-sharp-4.0-cilを参照設定し、htmlの表示はできたのですが、C#とJavaScript間でのデータの受け渡しができません。 サンプルになるようなソース、ウェブサイトを教えてもらえないでしょうか。
890 :login:Penguin :2020/04/07(火) 04:57:52.87 ID:zxHfMuME.net (・∀・)renice!
891 :login:Penguin :2020/04/07(火) 08:43:24 ID:zxHfMuME.net >>26 志村さん亡くなっちゃったね…
892 :login:Penguin :2020/04/18(土) 15:11:09 ID:dHG+LUD7.net GTK+に音鳴らすインターフェイスないの?
893 :劉 敢智 :2020/05/03(日) 19:46:41.53 ID:w+AaiiZ8n このスレタイはGNOME-1.2を対象にしているんですか? それともGNOME2以降を対象にしているんですか?
894 :劉 敢智 :2020/05/03(日) 19:47:50.12 ID:w+AaiiZ8n >>889 MONOは論理式が破綻しているので、開発中止になりましたよ。
895 :劉 敢智 :2020/05/03(日) 19:54:00.72 ID:w+AaiiZ8n C#と言ってもVisualC#でしょ。 GNUの方針ではJavaScriptを対応できるのはG++まで。 C#は対応できませんので、あしからず。
896 :劉 敢智 :2020/05/03(日) 19:56:30.09 ID:w+AaiiZ8n しかし、マイクロソフトの営業が馬鹿だから、「なんでもできます、やらしてください」って営業するのもだから、バージョン管理がわからない客が来るんだよなぁ。
897 :login:Penguin :2020/05/17(日) 12:10:17 ID:ztTG+X4j.net インプットメソッドの挙動の質問なんですが、 GTK+でテキストフィールドに選択された文字列がある状態から日本語入力を開始すると、 未確定文字が選択文字列の前に挿入されますが ( |選択文字列| -> |あ}選択文字列| 等)、 他のプラットフォームだと、日本語の入力開始時点で選択文字列は削除されるようです。 (|選択文字列| -> |あ|) で、前者のGTK+の挙動を後者のようにしたいのですが、それって何かの設定で いけたりしますかね? それともGTK+のテキストフィールド等のクラス (GtkEntryとか)の コードをいじったりしないと無理ですかね?
898 :login:Penguin :2020/05/17(日) 22:51:23.49 ID:75XaI+i9n 中学数学からはじめる微分積分https://www.youtube.com/watch?v=4p1rwfXbCoY&t=4341s 中学数学からはじめる相対性理論https://www.youtube.com/watch?v=voFHToRM4xI&t=10s 中学数学からはじめるAI(人工知能)のための数学入門https://www.youtube.com/watch?v=7A05OamqCyc 理学部と工学部の違いとは?https://www.youtube.com/watch?v=eJH4nKU6mJA&t=80s 大学と大学院の違いhttps://www.youtube.com/watch?v=xBKAEvTegN8 高校と大学の積分は決定的に違う?微分積分学の基本定理は実はすごい!https://www.youtube.com/watch?v=V9i_zlbssbs&t=475s 数学にはどんな研究分野がある?数学の世界地図を一枚に描いて紹介してみた!https://www.youtube.com/watch?v=fK_JGVti5y8
899 :login:Penguin :2020/05/31(日) 11:35:32.66 ID:Sn/y+3txN 富士通のwinjdows10 が故障したら、044 874 2020 が一番はやいですよ
900 :login:Penguin :2020/05/31(日) 12:05:12.27 ID:Sn/y+3txN 富士通のwinjdows10 が故障したら、044 874 2020 が一番はやいですよ
901 :login:Penguin :2020/10/10(土) 21:08:12.99 ID:xh7VaYpft 副業、大手も制度着々…コロナ禍、働き手は空き時間活用https://www.itmedia.co.jp/business/articles/2009/07/news111.html 富士通「年収3500万円」の衝撃 ソニー、NECも戦々恐々の「グローバル採用競争」https://www.itmedia.co.jp/business/articles/2008/21/news031.html 東大の起業ラッシュは本物か、大学発ベンチャー数日本一の実力https://business.nikkei.com/atcl/NBD/19/special/00448/ AI研究の第一人者、東大・松尾研でも起業ラッシュhttps://business.nikkei.com/atcl/gen/19/00158/051900002/?i_cid=nbpnb_arc 失敗は認める、多数決はダメ。拡大する「社会起業家集団」の作り方https://newswitch.jp/p/23033 新卒“即”起業せよ。社会起業家への最短距離に挑む若者たちhttps://newswitch.jp/p/23020 人々の共感を得られないと潰される時代。https://news.yahoo.co.jp/articles/37aef71415e8181ce8451e27feb3983bf1f6f9cd ゼロから起業するよりも事業承継(小さな会社の買収)が圧倒的に有利である3つの理由https://honsuki.jp/pickup/17323.html 「エース人材だって起業OK」、NECは挑戦者が集う場をつくるhttps://business.nikkei.com/atcl/gen/19/00106/012900003/ NECなど「出向起業」 大企業人材、起業しやすくhttps://www.nikkei.com/article/DGXMZO61733720Q0A720C2TJ1000/
902 :login:Penguin :2020/11/04(水) 15:58:47.24 ID:mhM0YxaG.net Gtkmm使っています…。メインウィンドウからもう一つウィンドウを開きます… このウィンドウにはテキストビューがあるとします…。巨大テキストを貼り付けて…メモリ使用量を増やします…。 そして…ウィンドウを閉じます…。window->signal_delete_event().connectで設定したメソッドで…delete windowをします…。 仕様では…メモリが解放され…メモリ使用量が減るはずなのですが…減りません…。 調べていたら…もっと深刻な事に気づきました…。G_OBJECT(なんかのWidget->gobj())->ref_countで参照カウントを見れます… Glib::RefPtrはよく使います…がヘッダーで宣言せずに…ローカルで何回も宣言して受けたりします… builder->get_widgetで親Widgetから取ったりしますが…ref_countが加算され…スタックを抜けても残ってます…。 Glib::RefPtrはヘッダーで宣言して…1つしか使わないようには変えれます…。 普通のWidgetの場合は…builder->get_widgetで何回も取得したりしますが…これもref_countが加算されます… 参照の値渡しでガンガン渡したりもしますが…普通のWidgetでもref_count増大は問題なんでしょうか?スタックを抜けてもあります…。 ref_countは後で悩むにしても…巨大テキストのTextViewをdeleteしてもメモリ使用量が減りません…。 非常に困惑しています…。誰か…。
903 :login:Penguin :2020/11/04(水) 19:19:14.18 ID:mhM0YxaG.net 895です…。メモリ管理はこれでOKなんだと思う…巨大テキストをdeleteしてもメモリは減らないが… 再度…ウィンドウを立ち上げて…巨大テキストを貼っても…メモリは…増えない… もちろん…ウィンドウを同時に2個立ち上げてで巨大テキストだと増えます…。 Glib::RefPtrのローカル宣言だけど…問題ない気がする…Windowをdeleteすると…消えてるようだ…。 どうも…今日は…メモリ管理で悩みましたが…このままでOKそうです…。 アプリをバイナリエディタとかでクラックできるのは…こういう仕様だからかもしれません…。 どうしても…メモリを減らしたい場合は…どうすればいいのかねぇ…解りません…。
904 :login:Penguin :2020/11/04(水) 19:40:10.27 ID:mhM0YxaG.net 895です…geditでも減らないようです…これはなんとかならないんですか!? 明日は…アロケートあたりを調べてみます…。
905 :login:Penguin :2020/11/04(水) 19:51:18.94 ID:mhM0YxaG.net 895です…別プロセスでWindow起動な気がしてきました…。 とにかく調べていきます…。
906 :login:Penguin :2020/11/05(木) 19:14:11.92 ID:4YZKWaEw.net 895です…テキストビューを300MBまで上げて閉じると…100MBくらい減りました…。 Linuxのアロケータの問題だと思います…。
907 :login:Penguin :2020/11/06(金) 00:23:41.75 ID:JXwz9Ncv.net どういう調査をしてるか分からんけど、mallocってのはユーザーランドのライブラリで、freeしたからといって直ぐにkernelに返却する訳じゃないぞ メモリリークを調査したいならValgrindとか専用のツールを使わないと メモリ周りの調査は簡単には行かないよ
908 :login:Penguin :2020/11/08(日) 08:09:49.82 ID:O49Zrc/N.net >>906 >Linuxのアロケータの問題だと思います アロケータとはどんなものかをちゃんと理解してるのかと。 汎用アロケータのせいにできる範囲というものがある。 geditとか、そんなバカでかいファイルを開くことを想定してなくて、チマチマメモリを 割り当てるようになってたりするのでは。 ただ確かにLinux以外はどうかはちょっと興味がある。mallocの使い方は同じでもさくさく mmap/munmapしたりするのもしれない。それはそれで別の問題もありうるが。
909 :login:Penguin :2020/11/17(火) 07:44:42.90 ID:xVdi3jrK.net 煮詰まっています…ダイアログに関してです…。Gladeです。 まず…トップレベルに指定すると…Gnomeにウィンドウが2個開いたマークが付きます。 これが気に入らない…メッセージ用のダイアログですが…こんなものにウィンドウ2個開いたみたいな感じに なるのは許せない…設定ダイアログでもそうです…メインウィンドウのみ起動していると見せたい…。 ウィンドウの属性の型をポップアップにしました…Gnomeでのインスタンス表示マークは… メインウィンドウのみになっています…美しい…しかし…今度はリサイズができなくなりました… これでは設定画面とかでは使えません…困りました。ID設定の横の複合というチェックボックスを付けました… うまく行きました…が…今度は…template classになってしまい…Gtk::Builderで読み込めなくなりました…。 その他…Resize grip…駄目でした。ウィンドウが2個開いたように見えるケースで… ページャーのスキップ、タスクバーのスキップなどやりましたが…駄目…2個開いたマークです…。 Gnomeでメインウィンドウのみにマークがついて…1個の状態で…サイズ変更ができるケースは… なんとかしてありませんか?非常に…困っています…。
910 :login:Penguin :2020/11/17(火) 07:55:43.58 ID:xVdi3jrK.net 902です…。Gtkmmですが…Gtk::Builderでtemplate classを読む方法があるかもしれません…。 明日は…そこら辺を調べてみます…。
911 :login:Penguin :2020/11/17(火) 09:47:17.84 ID:xVdi3jrK.net 902です…。できました!できました!dialog->set_transient_for(*window);でできました!
912 :login:Penguin :2020/11/18(水) 08:54:18.49 ID:tqB1zz0Z.net 902です…。dialog->set_attached_to(*window);だと背景は透過のままだね…。 親ウィンドウが暗くならない…。設定画面とかでは…こっちの方が美しいかもしれない…。
913 :login:Penguin :2020/11/18(水) 10:11:54.66 ID:tqB1zz0Z.net 902です…駄目だ…dialog->set_attached_to(*window);だと… Gnomeでウィンドウが2個立ち上がったマークが付きます…美しくない… スマートな方法は…なんかねぇかなぁ…。 今の所…set_transient_forで親ウィンドウがグレーになる方法が最善…。
914 :login:Penguin :2020/11/22(日) 03:38:11.00 ID:+TsvH1Y8v 大学で学ぶ物理を板書1枚にまとめてみたhttps://www.youtube.com/watch?v=naBcXoq4aOI 物理の研究分野を板書1枚にまとめてみたhttps://www.youtube.com/watch?v=4W-pWuXUaZQ 理学部と工学部の違いとは?https://www.youtube.com/watch?v=eJH4nKU6mJA&t=80s 大学と大学院の違いhttps://www.youtube.com/watch?v=xBKAEvTegN8 高校と大学の積分は決定的に違う?微分積分学の基本定理は実はすごい!https://www.youtube.com/watch?v=V9i_zlbssbs&t=475s 数学にはどんな研究分野がある?数学の世界地図を一枚に描いて紹介してみた!https://www.youtube.com/watch?v=fK_JGVti5y8
915 :login:Penguin :2020/11/22(日) 09:22:40.16 ID:RT2ZlOP6.net Gtkmmです…スレッドに関してです…。Glib::ThreadとGlib::Dispatcherに関してですが… 例えば…ストップウォッチを実装したとします…UIの更新は…Dispatcherを介したほうが安定します…。 UI更新を全てDispatcherにすると…Dispatcherは…引数を渡せないので…std::queueを使う必要が出てきます…。 ぶっちゃけ…Dispatcherに任せずに…スレッド内部でUI更新をするケースって…どうなんでしょうか? スレッドでUI更新か?ディスパッチャでUI更新か?って所で…悩んでいます…。 ディスパッチャを介さずに…スレッドでUI更新で…安定してくれれば…いいんだけど… 判断に困り果てています…。
916 :login:Penguin :2020/11/22(日) 11:32:43.72 ID:VOmbkXjB.net >>915 std::queueはスレッドセーフじゃないぞ つうかstd全部そう
917 :login:Penguin :2020/12/24(木) 21:06:38.36 ID:WbxxDuOR.net GtkのTextViewまたはSourceViewについて…50万行程度のテキストだと…geditでも…DRAWのバグなのか… 画面が真っ黒になるブロックがある…これって端末のスペックの問題?それともGTKのバグ? とりあえず…俺のノートでは…50万行程度のテキストで…画面が真っ黒になるブロックが発生する… C++で揚げ足を取るのが目的なので…別にLinuxじゃなくてもいいのだが…バグでなんかやる気なくしてきた…
918 :login:Penguin :2020/12/24(木) 21:23:40.46 ID:WbxxDuOR.net AMD Radeon™ HD 7470M 512MB(GDDR5) ビデオメモリかなぁ…。
919 :login:Penguin :2020/12/24(木) 21:26:50.56 ID:3eZE6ohA.net 個人情報なのかも
920 :login:Penguin :2020/12/24(木) 21:36:20.85 ID:WbxxDuOR.net でも…この状態で…ブラウザ使っても支障ないし…GTKのバグ!? 凹んできた…。
921 :login:Penguin :2020/12/24(木) 21:43:03.04 ID:WbxxDuOR.net radeontopでは…vram 0.66%…バグだ…やる気なくしてきた…。 C++で揚げ足取りたいだけなので…VC++でもいいんだ…。 しばらく…凹むわ…。
922 :login:Penguin :2020/12/24(木) 21:49:43.00 ID:3eZE6ohA.net 揚げ足とりなんて下らん事するなという神の啓示
923 :login:Penguin :2020/12/25(金) 08:01:47.79 ID:svpJsYYm.net 909です…。ハードウェアやドライバの問題かもしれないので…明日は…比較的ハイスペックな WindowsマシンにVirtualBoxを入れてテストしてみます…ならないかもしれない…。 昼夜逆転してるので…今日はもう寝ます…。端末特有の問題であればいいんですけど…。
924 :login:Penguin :2020/12/25(金) 22:39:50.86 ID:svpJsYYm.net 909です…VirtualBoxでもなります…バグだ…詰んでる…。 C++で揚げ足取る予定だったのに…これでは…ちょっと…。 明日から…どうやって生きて行こうか…。
925 :login:Penguin :2020/12/26(土) 03:16:41.92 ID:qC29iPVp.net 909です…日暮しになる所で…光が射した…。今…Ubuntu20.04を使用しているんだが… VitualBoxで…Ubuntu18.04で更新アップデートなし新規インストールで…なんと…18.04だと… 不具合が発生しない!…つまり…Ubuntu20.04のバグだ…。なんとかなるかもしれないので… 開発は続けるかもしれないが…Ubuntuにissue上げとかないと…かなり痛い…。 なんとかなるかもしれないので…C++で豪快に揚げ足取りまくる開発生活は続行できるかも… とりあえず…日暮しにはならないかも…明日は…Ubuntuにissueを上げておく…
926 :login:Penguin :2021/01/27(水) 09:49:49.86 ID:ZtDTw8x4.net GTKのテーマ Mist をベースに自分好みに改造しようとして、いくつかのテーマの gtcrc を 調べていたけど、チェックボックスを印つきにするのか、色だけで表現するのかどうやって 指定しているのかどうしてもわからずに散々悩んだあげく engine の存在に気づいた 調べた gtkrc が pixmap engine を使っていたら画像との関連がすぐにわかったが プリセット?である mist engine を使っている engine "mist" {} だけでは気がつけなかった 日本語で gtk のテーマの書き方を解説しているサイトは非常に少ないですね https://wiki.gnome.org/Attic/GnomeArt/Tutorials/GtkThemes https://wiki.gnome.org/Attic/GnomeArt/Tutorials/GtkEngines
927 :login:Penguin :2021/02/08(月) 03:48:30.09 ID:UfNSFpW9j デキる人ほどフリーランス化する?★働き方改革https://www.youtube.com/watch?v=ALflcwYOJtQ 年収890万円以下は社会のお荷物★騙される労働者https://www.youtube.com/watch?v=CAp-ZrJpF54 騙されたくなかったら勉強しろ★他人のルールは損をするhttps://www.youtube.com/watch?v=s176O6qKuPw 底辺の99%は一生底辺★10年後が見えない同僚たちhttps://www.youtube.com/watch?v=4Mfiwn2sPD8 稼ぎたければ働くな★4千万円ぽっちも稼げないのはなぜ?https://www.youtube.com/watch?v=Fi7bILN4wes サラリーマン思考では儲からない理由https://www.youtube.com/watch?v=iW6oAo0q0ZI 「頭使えよ貧乏人」に思う、寝てても金入るシステムを作る人https://www.youtube.com/watch?v=VEB6M_s6abs
928 :login:Penguin :2023/09/29(金) 23:33:39.84 ID:YMwiOaJy.net あのドラマ、めっちゃおもろいわ
929 :login:Penguin :2023/10/06(金) 16:55:29.82 ID:2CLqPO6e.net [クライシスアクター」「豊島保養所」←画像検索&拡散! 他スレに丸ごとコピペよろしくーーー!! ネットでできる反レプティリアン・反イルミ活動です!!!!! 動画サイトのコメ欄もねらい目だぞ!!!!!!!
930 :login:Penguin :2023/10/22(日) 23:51:48.47 ID:/UyVlcQZ.net >>892 昔プログラミングしてた頃はaplayを使ってたよ
931 :login:Penguin :2023/10/23(月) 22:50:30.48 ID:C9TWL6jk.net GStreamer
275 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★
本文 スレッドタイトル 投稿者