Gtkプログラミング on Windows!!!

1デフォルトの名無しさん
垢版 |
2006/05/08(月) 02:50:03
マルチプラットフォームなGUIライブラリでプログラミング!
利点
・C、C++、Python、Ruby, etc...いろんな言語にも対応してるぞ!
・Linuxに移植するのも簡単だぞ!
・Gladeで楽々GUIデザイン!
・自由!RMSマンセー!
・でも、ライセンスはLGPLだから動的リンクにすればアプリのソースコードを公開する必要は無いぞ!

GtkライブラリのバイナリはGlade込みのやつがオススメだぞ。
公式:http://www.gtk.org/
Windowsバイナリ:http://gladewin32.sourceforge.net/modules/news/

gtkmm: C++インターフェイスだ!
公式:http://www.gtkmm.org/
Windowsバイナリ:http://www.pcpm.ucl.ac.be/~gustin/win32_ports/gtkmm.html
2007/08/19(日) 02:07:29
>>137
?

http://developer.gnome.org/doc/API/2.0/glib/glib-Hash-Tables.html#GHashTable
139137
垢版 |
2007/08/19(日) 10:40:48
>>138
間違いた。なんでGlibにGHashTableがあるのに、GlibmmにはHashTableが含まれて
ないんだろう?
といいたかったの。
140デフォルトの名無しさん
垢版 |
2007/08/19(日) 18:02:22
待ちガイルやつは劣等種
2007/08/22(水) 20:57:54
stlなりboostなりがあるからじゃない?
2007/08/23(木) 07:30:25
なんでTreeViewのColumnにwidgetを貼れないのはなぜ?
2007/08/25(土) 00:15:58
CellRendererConainerを自作すれ
144デフォルトの名無しさん
垢版 |
2007/08/31(金) 18:54:55
GtkWindow がデスクトップの上で移動させられたことを知りたいのですが、
どういうシグナルを使うのがいいですか?
2007/08/31(金) 21:14:56
focus outでいいじゃねえの
146デフォルトの名無しさん
垢版 |
2007/09/07(金) 01:55:09
WxWidgets使った人居てる? CDT+WxWidgetsがうまく導入できません。
2007/09/07(金) 09:14:46
スレタイが読めないのか
2007/09/07(金) 10:26:52
これコンパイラは何使えばいいの?
2007/09/07(金) 21:40:47
スレ違いかもしれないけどGTK+ってどこの設定でどの言語を使うかを把握してるの?
試しにinkscapeとかPidginを使ってみたんだけど、いつも英語が表示されてしまうのだが。
2007/09/07(金) 22:33:47
LANGじゃねーの。あと、アプリの配布方法によっては各国語のカタログないやつもあるよ。
2007/09/27(木) 06:44:18
NGNG?2BP(100)
Coqという自動証明ソフトを入れようとしているのですが、
やたらとdllファイルが見つかりません、というエラーが出た挙句、

プロシージャエントリポイント g_get_application_name が
ダイナミックリンクライブラリlibglib-2.0-0.dllから見つかりませんでした。

というエラーが出てきました(´・ω・`)

これは勘なのですが、gtkを入れる必要があるという事なのでしょうか?

今のところ、C:\Program Files\Common Filesにgtkは入っていません。
2007/09/30(日) 21:10:21
ググってみれば?
NGNG?2BP(100)
>>153
一応ググってはみたんです。
そうするとどうもgtk関係のが多くひっかかったように思えたので
ちょっと質問しに来てみたのです。

まあ入れてみれば分かりますよね。
インストールしてみます。
2007/10/02(火) 08:28:23
DでGtkをラップしたフレームワークで
GTKmmみたいなのないですか

2007/10/02(火) 11:19:50
>>155
gtkmmみたいかどうかは知らんけど
http://www.gtk.org/bindings.html
2007/10/03(水) 03:06:42
JSGtkなんかあるのかw
158デフォルトの名無しさん
垢版 |
2007/11/01(木) 21:33:52
うむ
2007/11/10(土) 13:12:40
gtk_combo_boxのアイテム数を取得するにはどうすればいいですか。。。
理想としてはgtk_combo_box_lengthみたいなのがあればいいんですが・・・
2007/11/10(土) 14:38:47
>>159

gtk_tree_model_iter_n_children (gtk_combo_box_get_model (combo), NULL)

こんな感じでどうかな?
2007/11/10(土) 17:17:18
>>160
できました。ありがとうございます。
2007/11/21(水) 20:28:02
gtkmm 2.10.11です。

Gdk::Color red;
red.set_rgb(65535, 0, 0);
m_button1.modify_bg(Gtk::STATE_NORMAL, red);

これでボタンの色が変わると思ったら変化無し。
俺何か勘違いしている?
2007/11/21(水) 21:02:33
>>162
バグだね。2.12.0では見事に赤くなりました。
2007/11/21(水) 22:31:42
なにー。gnomeのサイトにあった2.10.11のお手軽パックで済ませようと思ってたのに。
とにかくthx。アップデートしてみる。
165デフォルトの名無しさん
垢版 |
2007/12/22(土) 01:27:24
デスクトップのマウスクリックイベントを取得したいのですが、どうすれば良いでしょうか?

グローバルホットキーを登録したいのですが、どのようにするのでしょうか?
2007/12/24(月) 12:19:36
それはGtkの仕事じゃない
2008/02/16(土) 08:33:47
HTMLをレンダリングするにはどうしたらいいんだぜ?
gtkhtmlもgtkmozembedも駄目くね?
168デフォルトの名無しさん
垢版 |
2008/02/21(木) 17:25:42
Vista 64ビットでGTKを動かしてみたのですが、
ウィンドウのタイトル以外(ボタンのキャプション)とか
全部 □□□□□ で表示されてしまいます。
coolwave.exe を動かしてみましたが、ボタンで Quit と表示されるところが
□□□□になってしまいました。
フォントとかの問題かもしれませんが、心当たりのある方に対策を
教えていただければと思います。
ちなみにVista32ビットだと、フォントの メイリオ がどうのこうの
と警告が表示されますが、とりあえずは表示は大丈夫です。
2008/02/21(木) 18:09:40
フォントじゃなくて文字コードだろ
2008/02/23(土) 02:56:49
Bugzillaで検索してみたら?
無ければ登録してあげれば多くの人が喜ぶんじゃない
2008/03/02(日) 13:50:54
Gtk::Windowのタイトルバーを除いた領域の縦横サイズを取得するにはどうしたらいいんでしょうかね?
2008/03/02(日) 13:53:46
PanelをExpandで貼れば分かる
173デフォルトの名無しさん
垢版 |
2008/03/19(水) 00:17:11
Glade win32版
http://gladewin32.sourceforge.net/

全部キレイになくなってる、、、
2008/03/19(水) 15:35:59
なくなってても困らないところがなんとも
2008/03/20(木) 21:19:35
有名かもしれないし、Linux向けのページだけど貼っとく。

GTK/GNOMEによるGUIプログラミング
http://www.iim.ics.tut.ac.jp/~sugaya/wiki/wiki/index.php?GTK%2FGNOME%A4%CB%A4%E8%A4%EBGUI%A5%D7%A5%ED%A5%B0%A5%E9%A5%DF%A5%F3%A5%B0
2008/03/21(金) 21:10:07
>>175
スレ違いだけど
sugayaってもしかしてと思ったら、うちの大学で助手やってた人だ
2008/03/21(金) 21:25:46
>>176
岡山乙
2008/04/04(金) 18:20:19
このスレ、Winだけにする必要あるの
2008/04/04(金) 18:44:07
必要は無いけど
Linux板にもGTK+スレがあって、しかも向こうの方が歴史が長い。
環境の切り分けも出来てるしいいんでない?
2008/07/02(水) 03:48:30
Glade for Win32がとりあえず復活している様子。
ttp://gladewin32.sourceforge.net/
2008/07/04(金) 06:55:31
unix板にはgtkスレ無いのか
2008/07/04(金) 15:42:49
linux板にはあるからそっちを使いな
・・・Qtスレはunix板にあるんだな
2008/07/10(木) 04:00:45
gtk-dev-2.12.9-win32-2.exeってのさっきインストールしてみたら、
元のシステム環境変数PATHを思いっきり消して、自分のPATHだけ登録しやがった。
何これ、ふざけてる。インストーラのバグか?

幸い気づいたときには、消される前に起動したシェルを立ち上げたままだったんで、
シェルが握ってる環境変数から復元したけど。
2008/07/12(土) 18:01:21
>>182
Linux使ってないんだけど
2008/07/12(土) 22:25:49
>>183 報告する場所間違えてない?
2008/07/13(日) 00:13:16
>>184
んなこた知るかよ
187デフォルトの名無しさん
垢版 |
2008/09/10(水) 15:05:20
GtkWindowを最前面で表示する方法ってどうするん?
188デフォルトの名無しさん
垢版 |
2008/09/10(水) 22:02:02
コンテナなどはcan-focusをセットすればフォーカスが移るようになると思うのですが、
フォーカス枠は表示されません。この場合にフォーカス枠を表示させる方法はあるのでしょうか?
189デフォルトの名無しさん
垢版 |
2008/09/11(木) 21:47:59
MinGWで開発してます。

コンパイルして、実行ファイルを実行するとGUIの画面も出ますが、
コンソール画面も出ます。

このコンソール画面が表示されないようにするにはどうしたらいいでしょうか?
2008/09/11(木) 22:17:30
>>189
-subsystem,windows
2008/09/11(木) 23:38:33
>>190

ありがとうございます。
出なくなりました。
2008/09/12(金) 20:36:30
>> 190
それって、Cygwin用じゃないの?
そんなことを書いているサイトを見たことがある・・・
2008/09/12(金) 23:42:08
>192
PE ヘッダ中のフラグをどうするかだけだろうから Win32 の EXE なら一緒でしょ。
っていうか、EXE を直接書き換えても同じ効果が得られるはず。
2008/09/24(水) 05:31:15
GTKってLGPLだよね?商用とかいけんのかね?
ライブラリがないとかでユーザサイドで動かない場合が多くなりそうだけど。。
シャエウェアもダメなんかね?
2008/09/24(水) 05:40:14
>>194
商用ソフトが実際にあり、うちの会社で使ってる。
2008/09/24(水) 10:59:12
libはユーザで用意してねってことにして?
2008/09/26(金) 16:41:50
>>194
LGPLならライブラリをパッケージに含めることは問題無いだろう
もちろんライブラリ自体に手を入れたなら、その部分のソースは入手可能にしておかないといけないが
2008/09/27(土) 05:10:03
LGPLのライブラリを再配布していいんだったらスタティックリンクしたのとあんまかわんないし、
だめなんだと思ってたんですが。
うーん、ぐぐってもなんか意見が割れてるなあ・・よくわからん
2008/09/27(土) 16:57:33
何をどうググったのか知らんが
割れてるなら厳しい意見の方を採用しておけばまぁ間違いは少ないだろう
2008/09/28(日) 19:58:55
Windowsの終了時(電源を切る)に
ソフトを起動する事は出来ないでしょうか?

時間記録等のバッチやアプリを起動したいと思っています。
(現状は、この最後のためだけに常駐させている状況です)
2008/09/28(日) 21:33:48
WM_QUERYENDSESSIONでfalse返しておいてアプリを起動し、バッチ終了後に改めてExitWindowsを投げるアプリを作ればもちろん出来ますよ
2008/09/29(月) 15:09:06
.あるいは単に「アプリAを起動、終了を確認してからExitWindowsする」
アプリBを作り、必ずアプリBを起動してWindowsを終了するようにする。
これなら常駐の必要ないべ。

てかGtkと関係あるのか?w
203200
垢版 |
2008/09/30(火) 02:18:35
>>201-202
有難う御座います。 これを参考に早速試してみたいと思います。
2008/10/19(日) 23:38:57
LGPLはライブラリをそのまま含めれば
ソースコードの公開やらフリー化が義務らしいがDLLはその限りではないらしい
パッケージにDLLを含めればいいのでは?
2008/11/09(日) 23:26:39
GtkTextIterの仕様って意味不明だわ。

テキストの範囲の終わりを示すのに使われるときには手前の文字までしか
含まないのに、GtkTextIter自体から文字を取得するときには後ろの文字が
返される。

なんで「文字と文字の間の位置を表す」なんてわかりにくい概念で定義
するかね。

理解するのに無駄に時間がかかったよ。
206デフォルトの名無しさん
垢版 |
2008/11/20(木) 03:05:23
イテレータはC++におけるSTLの概念だね...

まあテンプレート自体C++特有の考え方だから
C++使わない人にはなじみがないかも...

ソートやらリストやらの手間が省けるから便利ではあるんだけどね...
2008/11/27(木) 19:31:25
ちがうよ
2009/01/04(日) 09:09:42
今気づいたが、WindowsでGTK+やQtのアプリ起動すると、サンプル程度の物でも
メモリ使用量が20〜30MBは当たり前って感じで萎えた。タスクマネージャでざっと
確認しただけだが、同じ物を複数起動しても、すべてそんな感じ。

この事といい、起動速度といい、.NETといい勝負。ただGTK+はクロスプラットフォ
ームだし、LinuxのGNOME上なら起動速度も普通(当たり前だけど)なのが違う。
2009/01/04(日) 10:47:24
Gnomeはそれ自体がもっさりだから目立たないだけって肝ス。
210208
垢版 |
2009/01/11(日) 18:36:58
どなたかメモリ節約しつつRuby/GTKアプリケーション動かす方法知りませんか?

やっぱ無理なのかなあ。
2009/01/11(日) 20:14:37
Ruby+GTKという組み合わせな時点で
ある程度メモリ食ってしまうのは仕方ないだろ
212デフォルトの名無しさん
垢版 |
2009/02/11(水) 20:12:54
アプリをGUIで終了させるには正常に終わるのですが、
コンソールからCtrl-Cで終了させると、エラーメッセージが出ます。
どうすれば直りますか。
2009/02/12(木) 07:23:38
そりゃそうでしょ。正規の終了方法じゃなくて強制終了なんだから。
2009/02/14(土) 09:51:51
>>208
でたらめ吐くな
GTKのサンプルくらいなら10M以下で十分動作するだろうが
215デフォルトの名無しさん
垢版 |
2009/02/18(水) 19:53:32
サンプル程度で10Mも喰うなんて
馬鹿なの?
タヒぬの?
216デフォルトの名無しさん
垢版 |
2009/02/18(水) 19:55:16
>>212
Ctrl-Cシグナルをフックするハンドラを書いて
abortしないようにすれば桶
2009/03/12(木) 14:57:27
+window
 −+vbox
  −+scrolledwindow
    −+viewport
     −+aligment
       −drawingarea
という構成でscrolledwindowの中心がdrawingareaに表示した画像のどの座標
に該当するか分かる方法又は関数ってありますか?

2009/04/05(日) 23:04:06
こやつめw
219デフォルトの名無しさん
垢版 |
2009/04/06(月) 05:05:28
GdkのregionってWin32のGDIのregionみたいに色んな図形のとか、
PathToRegionみたいなことできるんですか?
2009/04/20(月) 08:50:22
こんど新しいQtの本が出るみたいだよ。入門書っぽいけど。GTK+もがんばってほしいなあ。
http://www.amazon.co.jp/dp/4877832211
2009/05/14(木) 17:29:32
すみません、さっぱり分からないので教えてもらえないでしょうか・・・。

gtk_pixbufの関数(gdk_pixbuf_new_from_file)を使いたいのですが、やっぱりgdk_initは呼んでないと駄目ですよね?

gdk_initって、DISPLAY環境変数がないと動かないようなのですけど、X Windowを立ち上げない状態ではやっぱり無理ですかね・・・。

http://jp.rubyist.net/magazine/?0019-cairo

の真ん中あたりには、Xサーバーがなくても動くみたいなことが書いてあります。
この記述はあってるんですか?

どうぞよろしくお願いいたします。
222デフォルトの名無しさん
垢版 |
2009/05/14(木) 20:55:58
>221
CentOSだけど、DISPLAYなくても動くみたい
---
.....
    g_type_init();

    pGError    = NULL;
    pGdkPixbuf = NULL;
    pGdkPixbuf = gdk_pixbuf_new_from_file(pFile, &pGError);
    if (NULL == pGdkPixbuf) {
        fprintf(stderr, "%s:%d:%s\n", pFile, pGError->code, pGError->message);
        g_error_free(pGError);
    }
    else {
        printf("Open success %s\n", pFile);
    }
.....
---
$ g++ -g 'gdk_pixbuf_new_from_file.c' `pkg-config gtk+-2.0 --libs --cflags`
$ export DISPLAY=
$ ./a.out tmp.jpg
gdk_pixbuf_new_from_file(tmp.jpg)
Open success tmp.jpg
$ ./a.out tmp.txt
gdk_pixbuf_new_from_file(tmp.txt)
tmp.txt:3:Couldn't recognize the image file format for file 'tmp.txt'
2009/05/15(金) 11:03:31
>222
返信ありがとうございます!
なるほど、g_type_initを呼ばないといけなかったのですね。
勉強不足でした。

今回初めてlinux上で開発をやらなければならなくてやってるのですけど
難しいですね・・・。英語しかないものが多くて泣きそうです。

本当に助かりました。222さん。
2009/07/06(月) 02:09:23
Gladeとgtkmmって全く依存関係ないんですか
225デフォルトの名無しさん
垢版 |
2009/07/13(月) 23:50:43
Win32 用で Gtk+ と Gimp-dev の環境ってどこかにないですか?
環境作るのに疲れました。

MinGW + msys でコンパイルしたいと思ってます。
2009/07/15(水) 07:48:23
最初D言語の統合環境で見つけたCode::BlocksがGtkの開発に意外と便利だった
2009/07/15(水) 10:45:31
>>225
http://launchpad.net/oah
gimp-dev は入ってないな・・・
2009/07/21(火) 08:21:54
EclipseのGTKプラグインってどっかで入手できますか?
229デフォルトの名無しさん
垢版 |
2009/07/25(土) 22:23:46
age
2009/07/25(土) 22:26:24
【科学】道路に軍手が落ちているワケ、名城大研究チームが突き止める[09/07/24]

http://namidame.2ch.net/test/read.cgi/hidari/1225537555/
2009/07/26(日) 07:22:37
sage
2009/08/17(月) 17:49:49
自動焼人 ★ = 自動保守 ◆KAWORUKOFI = 自動保守#K9K?_D[L

名言集 その4
『俺、100人規模の集団サイバーテロの主犯だったこともあるんだぜ』

http://yutori7.2ch.net/test/read.cgi/news4vip/1249830540/ のID:PVAf+dux0 = 自動焼人 ★

> 965 :以下、名無しにかわりましてVIPがお送りします [sage] :2009/08/10(月) 00:02:09.35 ID:PVAf+dux0
> まぁ何だ。
> 俺の過去の経歴に比べたら、割れ厨なんて鼻くそレベルなんだけどなw
> 100人規模の集団サイバーテロの主犯とか、いろいろとな。


----------------------------------------------
この自動焼人 ★メールマガジンの配信停止をご希望される方は
http://qb5.2ch.net/test/read.cgi/sec2chd/1250169591/
にて自動焼人 ★までご連絡ください
233デフォルトの名無しさん
垢版 |
2009/08/24(月) 06:50:47
このスレ、何でWindows限定?
2009/08/24(月) 10:04:10
xNIX板のGTKスレのドザ向け隔離スレだから
235デフォルトの名無しさん
垢版 |
2009/09/18(金) 10:08:09
ボタンwidgetの背景色を動的に変えるにはどうすればいいの?
2009/10/07(水) 23:54:49
10MBもメモリ食わないけどなぁ・・・
237デフォルトの名無しさん
垢版 |
2009/10/30(金) 00:49:26
これからGTK+を学んでみようと思ってる者っす。

GTK+を使ったWindowsアプリを作ったら、そのアプリの使用するマシンでGTK+が動くように
ライブラリか何かを一緒に配布する必要がある?
どれを配布すればいいかな。
Sylpheedはインストーラで自動でインストールできるようになってるみたい。

>>1の動的リンク云々はこの関連の話?
動的リンクってつまりDLLのことかな。

誰かかっこいい人、教えてください。
レスを投稿する