X



Gtkプログラミング on Windows!!!
0001デフォルトの名無しさん
垢版 |
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
0162デフォルトの名無しさん
垢版 |
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);

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

グローバルホットキーを登録したいのですが、どのようにするのでしょうか?
0168デフォルトの名無しさん
垢版 |
2008/02/21(木) 17:25:42
Vista 64ビットでGTKを動かしてみたのですが、
ウィンドウのタイトル以外(ボタンのキャプション)とか
全部 □□□□□ で表示されてしまいます。
coolwave.exe を動かしてみましたが、ボタンで Quit と表示されるところが
□□□□になってしまいました。
フォントとかの問題かもしれませんが、心当たりのある方に対策を
教えていただければと思います。
ちなみにVista32ビットだと、フォントの メイリオ がどうのこうの
と警告が表示されますが、とりあえずは表示は大丈夫です。
0171デフォルトの名無しさん
垢版 |
2008/03/02(日) 13:50:54
Gtk::Windowのタイトルバーを除いた領域の縦横サイズを取得するにはどうしたらいいんでしょうかね?
0179デフォルトの名無しさん
垢版 |
2008/04/04(金) 18:44:07
必要は無いけど
Linux板にもGTK+スレがあって、しかも向こうの方が歴史が長い。
環境の切り分けも出来てるしいいんでない?
0183デフォルトの名無しさん
垢版 |
2008/07/10(木) 04:00:45
gtk-dev-2.12.9-win32-2.exeってのさっきインストールしてみたら、
元のシステム環境変数PATHを思いっきり消して、自分のPATHだけ登録しやがった。
何これ、ふざけてる。インストーラのバグか?

幸い気づいたときには、消される前に起動したシェルを立ち上げたままだったんで、
シェルが握ってる環境変数から復元したけど。
0187デフォルトの名無しさん
垢版 |
2008/09/10(水) 15:05:20
GtkWindowを最前面で表示する方法ってどうするん?
0188デフォルトの名無しさん
垢版 |
2008/09/10(水) 22:02:02
コンテナなどはcan-focusをセットすればフォーカスが移るようになると思うのですが、
フォーカス枠は表示されません。この場合にフォーカス枠を表示させる方法はあるのでしょうか?
0189デフォルトの名無しさん
垢版 |
2008/09/11(木) 21:47:59
MinGWで開発してます。

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

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

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

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

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

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

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

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

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

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

やっぱ無理なのかなあ。
0212デフォルトの名無しさん
垢版 |
2009/02/11(水) 20:12:54
アプリをGUIで終了させるには正常に終わるのですが、
コンソールからCtrl-Cで終了させると、エラーメッセージが出ます。
どうすれば直りますか。
0215デフォルトの名無しさん
垢版 |
2009/02/18(水) 19:53:32
サンプル程度で10Mも喰うなんて
馬鹿なの?
タヒぬの?
0216デフォルトの名無しさん
垢版 |
2009/02/18(水) 19:55:16
>>212
Ctrl-Cシグナルをフックするハンドラを書いて
abortしないようにすれば桶
0217デフォルトの名無しさん
垢版 |
2009/03/12(木) 14:57:27
+window
 −+vbox
  −+scrolledwindow
    −+viewport
     −+aligment
       −drawingarea
という構成でscrolledwindowの中心がdrawingareaに表示した画像のどの座標
に該当するか分かる方法又は関数ってありますか?

0219デフォルトの名無しさん
垢版 |
2009/04/06(月) 05:05:28
GdkのregionってWin32のGDIのregionみたいに色んな図形のとか、
PathToRegionみたいなことできるんですか?
0221デフォルトの名無しさん
垢版 |
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サーバーがなくても動くみたいなことが書いてあります。
この記述はあってるんですか?

どうぞよろしくお願いいたします。
0222デフォルトの名無しさん
垢版 |
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'
0223デフォルトの名無しさん
垢版 |
2009/05/15(金) 11:03:31
>222
返信ありがとうございます!
なるほど、g_type_initを呼ばないといけなかったのですね。
勉強不足でした。

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

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

MinGW + msys でコンパイルしたいと思ってます。
0229デフォルトの名無しさん
垢版 |
2009/07/25(土) 22:23:46
age
0232foi.americanprogress.org
垢版 |
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/
にて自動焼人 ★までご連絡ください
0233デフォルトの名無しさん
垢版 |
2009/08/24(月) 06:50:47
このスレ、何でWindows限定?
0235デフォルトの名無しさん
垢版 |
2009/09/18(金) 10:08:09
ボタンwidgetの背景色を動的に変えるにはどうすればいいの?
0237デフォルトの名無しさん
垢版 |
2009/10/30(金) 00:49:26
これからGTK+を学んでみようと思ってる者っす。

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

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

誰かかっこいい人、教えてください。
0238デフォルトの名無しさん
垢版 |
2009/10/30(金) 07:58:47
ライブラリはインストールパッケージにdllを一緒に入れるか
staticlinkでなんとかなるんじゃないかな
フォントとかも一緒にいるし
それ以外にもいろいろいるから
自己解凍インストールにしないかぎり
exeひとつだけって訳にはいかないよ
0239デフォルトの名無しさん
垢版 |
2009/10/30(金) 15:06:01
男前な>>258さん、ありがとう。
スタティックだとソース公開しなきゃいけなくなるんじゃなかった?
ダイナミックはOK、スタティックはダメって変な話だから、間違ってるかも。

で、dllはどれを入れるんでしょ?
あと、「それ以外にもいろいろ」っていうのは、iniとかreadmeみたいな
自分で作ったファイルってこと?
そういうのならわかるからいいけど、システム上要求されるファイルのことがわかんない… ><
0242デフォルトの名無しさん
垢版 |
2009/11/01(日) 22:16:56
GTK+ってWindowsではあまり使われてないの?
何で〜?
0244デフォルトの名無しさん
垢版 |
2009/11/02(月) 20:18:35
JavaのJREみたいに、「これさえインストールすればGTK+を使ったソフトが動きます」っていうような
インストーラがあればいいのにね。
ソフトごとにライブラリをパックして配布するなんて面倒い。
0246デフォルトの名無しさん
垢版 |
2009/11/02(月) 20:50:49
あー、全部詰め込むと巨大になるのか。
使ってるDLLだけ実行ファイルと一緒に入れておくのがいいのね。
0247デフォルトの名無しさん
垢版 |
2009/11/03(火) 18:27:24
GTK+って商用で使われてる?
職業プログラマの人たちは、仕事で使ってるんだろうか・・・。
0248デフォルトの名無しさん
垢版 |
2009/11/03(火) 18:56:27
>>247
VMwareとかに使われてるのはよく聞く。
AndroidのUIもGTK+じゃなかったっけ?あと携帯のシミュレータの外側UIにGtk+の1.x系が使われてたってのも聞いたことがある。
0254デフォルトの名無しさん
垢版 |
2009/11/03(火) 22:40:35
商用アプリは残念ながらほぼないに等しいと思うけど、
ttp://www.sharp.co.jp/netwalker/
みたいに、Linuxをまんま載せてるものはメインで動いているのは
GTK+アプリだよ。
0255デフォルトの名無しさん
垢版 |
2009/11/03(火) 22:49:01
GTK+はライセンスの問題があるからな
0256デフォルトの名無しさん
垢版 |
2009/11/03(火) 22:54:35
俺のNECの携帯BusyBoxでGTK+1.xだわ
公式ページ探したらソースコード落とせるようになってた
組み込みならGTKけっこうあるんじゃないか?
レスを投稿する


ニューススポーツなんでも実況