GTK+/Glade/gtkmm

このエントリーをはてなブックマークに追加
1デフォルトの名無しさん
2棄教者 ◆egKIKYO7cg :03/04/11 11:15
2get
やっぱこれからのUn*xのGUIはGTK2+だよな。
emacsとか、mozillaとかgtk2+対応してきてるし。
4相互リンク:03/04/14 14:00
GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/l50
(gtkmm があるとはいえ)いまどきCベースだし。
この板じゃ盛り上がることも期待できないし。
俺Qtの方が好きだし。
6和書:03/04/14 17:38
GTK+入門―基礎からはじめるXプログラミング
http://www.amazon.co.jp/exec/obidos/ASIN/479731902X/


GTK+・GDKによるLinuxアプリケーション開発
http://www.amazon.co.jp/exec/obidos/ASIN/4881357751/


Ruby/GTKプログラミング入門
http://www.amazon.co.jp/exec/obidos/ASIN/4774114685/


GTK+とGladeで作るLinuxプログラミング超入門―かっこいいアプリを自分で作ろう
http://www.amazon.co.jp/exec/obidos/ASIN/4883990494/


GTK+ではじめるXプログラミング 竹田英二著技術評論社
ISBN 4-7741-0789-1 ¥2780+税 1999年6月25日発行
絶版?
Gtk+ は各種言語へのバインドがあるのが良いね。
gtkmmってまともにMingwで使える?
もし使えるんならちょっとやってみようかなとも思うけど、
昔出来なかったから wxWindows にしちゃった。
9デフォルトの名無しさん:03/04/15 03:29
>>8
インストーラあり(実行/開発環境含む)
http://www.pcpm.ucl.ac.be/~gustin/win32_ports/
キュー(・∀・)ティ
http://www.trolltech.com/
>>10
QTはWindowsではVC用のしか提供されていないのが痛いな。
まあ、Cygwin(MinGW)でビルドすればいいんだろうけど誰もやらないよね。
128:03/04/15 10:15
>>9
うぉ、こんなの今はあるのかぁ・・・アリガト
どーしようかなぁ。ソースレベルでLinux等と互換性が取れるんだったら
wxWindowsからの乗り換えも検討しようかなぁ。
使ってる方どないでしょ?一応自分でもやってみようとは思うのですが、
なにしろ gtkmm の勉強から初めねばならんので出来れば教えて下ちい。
>>12
gtkmm つかってる2ちゃんブラウザ
http://www.venus.sannet.ne.jp/thomas/
14デフォルトの名無しさん:03/04/15 20:25
>>11
マジレスするとQt2系列はCygwinで動いている。
Cygwin+Xでザウルス開発用にQt/Embeddedのエミュも動いてるし。

KDE2も動くらしい。
158=12:03/04/15 23:11
>>13
うーむ、これMingwで動くのだろうか・・・
とりあえず未だ環境整備中。
なんかインストーラーでgtk+ & gtkmm入れると変な所にファイル入れたり、
デフォルト以外の所にインストールすると挙動が変だったり・・・順番に
よってもなんか違うっぽくてイヤン。
1611:03/04/16 11:11
>>14
でもネイティブじゃないでしょう。VC用のは使えんしなぁ。
QTってどうなんですか。gtkmmのFAQにはgtkmmのほうが
わかりやすいって書いてあったんですけど。
QTはWIN用はもうフリーでは提供してない。
フリーなのは2.xどまり
WINでUNIXのXアプリ作りたいならGTKにすればいい
1814:03/04/16 20:33
>>16
ネイティブじゃないですね。
>>11にcygwinでって書いてあるからcygwinの話したのに…

Qtとgtk+(gtkmmではない)をちょっとずつ使ったことあるけれど、
Qtはライブラリ自体は使いやすいとおもうけど、mocとかお約束が多いのと、
巨大化してきてるのが…、ただMFCとか使ってたならあっさり入れるかも。
gtkの方がクラス構造以外は気にせずに済みそうなのは利点な気がする。


1911:03/04/16 20:57
>>18
いや、Xがいるってことです。まだlibw11は実用ではないみたいですから。
20山崎渉:03/04/17 15:22
(^^)
23山崎渉:03/04/20 04:34
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
GTK+/gnomeui/libgradeのPerl用バインディングだそうです。
http://www.gtkperl.org/

GTK Tutorial日本語版。GTK 日本語メーリングリスト有志の方が訳されたそうです。
ttp://www.swlab.csce.kyushu-u.ac.jp/man/gtk_tut_ja/gtk_tut_ja.html

Gtk-- チュートリアル 翻訳作業のページ、残念ながら2000/01/23から作業は止まっているようです。
ttp://www.interq.or.jp/earth/inachi/gtk/gtk--/tutorial/index.html
26おむこさん志望 ◆QtGqCwfDSA :03/04/24 21:19
gtkmm 日本語メーリングリスト(総投稿数2通ですが)
http://www.freeml.com/info/gtkmm-jp
gtkmm本家のほうのメーリングリスト
http://www.gtkmm.org/mailinglist.shtml
*** gtkmm 2.2

gtkmm provides a C++ interface to GTK+. gtkmm 2.2 wraps GTK+ 2.2
http://www.gtkmm.org.

Like GTK+ 2.2, gtkmm 2.2 contains only API addition, without API or ABI
breakage.
*** Changes

(See also Known Problems below)

2.2.2:

* Compiles with gcc 2.95 again.
* OptionMenu: Fixed segfault when Menu remembers destroyed OptionMenu.
(Murray Cumming)
* Gtk::Image::get_pixbuf(): Fixed reference counting error.
(Enrico Costanza)
* Pango::AttrList::insert(), insert_before(), change()): Pass a copy of
the attribute parameter. (Martin Schulze)
* Menu: Fixed memory leak when removing MenuItems.
(Murray Cumming)
* Build fixage (Enrico Scholz, Cedric Gustin)
* Win32:
- Dispatcher ported to Win32, we think.
(Andrew Makeev, Cedric Gustin, Murray Cumming)
* Examples:
- Updated book/idle and book/timeout.
(Gene Ruebsamen, Murray Cumming)
* Documentation:
- Win32 installation instructions. (Gene Ruebsamen)
- Glib::Module documented (Ross Burton)
- Updated idle/timeout chapter. (Gene Ruebsamen)
- Correct all automatic-from-GTK+ documentation that mentions
_free() functions by mistake. (Murray Cumming)
- Corrected typo in gtk_window_set_default(). (Oli Kessler)
- gobj() methods documented.
- Documented Glib::ListHandle, Glib::ListHandle, Glib::SListHandle.
(Murray Cumming)
*** Known Problems

gcc 3.3, now used by debian unstable has a compiler bug that prevents gtkmm
from compiling:
http://lists.gnome.org/archives/gtkmm-list/2003-May/msg00142.html
http://lists.gnome.org/archives/gtkmm-list/2003-May/msg00159.html
gcc 3.2 does not have this problem.

*** Download

http://www.gtkmm.org/download.shtml

You will need libsigc++ 1.2, available here:
https://sourceforge.net/project/showfiles.php?group_id=1970


*** Development

There is ongoing discussion on the mailing list:
http://www.gtkmm.org/mailinglist.shtml
and in the #c++ channel on irc.gnome.org


Murray Cumming
[email protected]
www.murrayc.com
33山崎渉:03/05/28 13:12
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
ワラタ
ここは何するスレですか?
あんまり伸びてないな。。
GTKとQtってどっちがいいだろうか。
37デフォルトの名無しさん:03/06/26 22:40
>>36
GTKでプログラムする人ってやっぱGNOME派なのか?
>>37
そうとも限らないと思うが。
ttp://sylpheed.good-day.net/
ところで、QTマンセーな連中はマジメにgtkmmを
見たことがあるのだろうか?
FAQにもあるとおり、独自プリプロセッサが必要だし、
標準C++ライブラリとの相性も悪いし。

もちろん実績と、gtkmmがバインディングであるゆえの
わずらわしさはあるだろうが、純粋にToolKitとして
両者を比較したらどうなる?
QTはC++ネイティブだから偉いんです。
QTはC++ネイティブだからでかいんです。
42山崎 渉:03/07/15 10:29

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
Win32のGTKってまだ安定してないの?
>>43
表向きには「substantially complete」==「ほぼ完成」と
うたってるね。(2.2.0のリリースアナウンスより)
それ以降のリリースでも、例によってTor Lillqvistが
かなりのバグフィクスをしてるから、けっこういい線
行ってるんじゃないだろうか。

漏れはRuby/GTK2でちょっといじったりサンプルを
動かしたりした程度だが、落ちたこともGTK内部の
Warningが出たこともなかった。
ちなみにGTKのバージョンは2.2.1で、
ttp://www.dropline.net/gtk/
にある2.2.1.2ってやつ。

手っ取り早く状況を知りたいなら、gaimページ
ttp://gaim.sourceforge.net/
からWin32ポートを持ってくれば?
Gaim自体のインストーラ付きバイナリがあるのはもちろん、
droplineパッケージのGTKバイナリも一緒にインストール
されるので、Win32でのGTKの完成具合をみる
絶好のテストケースになるように見える。

Gaim側でもポート作業中だろうから、まだWarningは
何回か出たけどね。でも落ちなかったし、少なくとも
MSNプロトコルではぜんぜん問題なく日本語まで使えたよ。

唯一の問題は・・・ダイアログのボタンの位置か。マジで。
45デフォルトの名無しさん:03/07/22 00:04
46山崎 渉:03/08/02 02:27
(^^)
47デフォルトの名無しさん:03/08/02 12:32
よう喋る外人だ
48デフォルトの名無しさん:03/08/02 20:14
☆ ☆ ☆ http://www.gals-cafe.com ☆ ☆ ☆

りさちゃんですっ☆みんな元気ぃ?夏だねっ!

あたしね、今アメリカにいるんだけど、、、えへっ(*>▽<*)
アナタに逢いたくて、こんなバイト始めちゃったヨ♪
りさに逢いに来てくれたら、7日間も会費無料サービスしちゃうし、
さらにさらに10分間も無料なんだよ! Σ(@o@)!!
アナタにだけの特別大っサービス♪絶対来てね!
二人っきりでたっくさん楽しいことしようよ♪まってるよ(^.^)/
☆ ☆ ☆ http://www.gals-cafe.com ☆ ☆ ☆
49デフォルトの名無しさん:03/08/06 00:49
gtk+からDirectX叩けますか?
50デフォルトの名無しさん:03/08/06 00:51
すみません。
・セパレーターの出し方教えてください。
・サブめにゅう>の仕方教えてください。

すみません。
わかりません。
52デフォルトの名無しさん:03/08/06 02:15
GTK+を使うメリットを教えてください。
>>50
gtk-demo 見れ

しっかし libgnomecanvas とか libgnome/libgnomeui はまだドキュメントが貧弱だな...
ライブラリのソースに当たるのもなかなか面倒だ
54山崎 渉:03/08/15 15:58
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン
QTはC ネイティブだからでかいんです。
gtkmmやろうしたがDLLの競合の所為でうごかねえ
57デフォルトの名無しさん:03/08/18 02:57
Gtk-WARNING **: gtk_scrolled_window_add():
cannot add non scrollable widget use gtk_scrolled_window_add_with_viewport() instead

ScrolledWindowにTreeをaddしたらこの警告がでる。
Treeはスクロール可能なwidgetではない?
どういうことだろう。
58デフォルトの名無しさん:03/08/18 03:05
C++だYO!
5957:03/08/18 03:10
自己解決。add_with_viewportを使ったら警告がでなくなった。
ここで不思議なのが、CListの場合は add_with_viewport じゃなくて
add で登録しているのに警告がでない。
CListとTreeは何が違うんだろうか。
Tree,Listは確か古い。そのためにスクロールできない。
CTreeを使いなさい。これも2.0からすると古いが。
ScrolledWindowと組み合わせればスクロールできるよ。
62デフォルトの名無しさん:03/10/06 07:42
gtkmmの入門書とかでないかなあ
聞きにきたが、寂れすぎダ
>>63
今はQTが主流なんかな?
QtのWin32版がフリーであれば迷わずQt使ってみるんだが・・・
俺はもうQtは使ってないよ。>>65の理由で。
C#やDにも移植されてるっぽいからな。
そういうのを使ったらまだマシになるかな?
68デフォルトの名無しさん:03/11/03 03:46
age
個人的にはGTK+ってC/C++用のGUIライブラリというよりもむしろ
モダンなTcl/Tkって印象のほうが強いんだが。
ところでWindowsでgimp以外のGTK+使ったソフトをランタイム含めて入れてくれる人っているのかなぁ?
記述性を考えると、Tcl/Tk の方がモダンな気がする。
Tk は C から使う時も Tcl 経由なのがアレだけど。
>>70
sylpheed 入れてまつ。
別に別途入手とかシステムフォルダにDLL突っ込むとかでなければ
GTK+使ってるかどうかなんか誰も気にしない気がするんだが。
Look & Feel が Windows とはちがうから「気にしない」は無理かと。
http://www.dropline.net/gtk/download.php
ランタイムは↑でダウンロードしてねっていうのはやっぱりマズイですか・・・
76デフォルトの名無しさん:03/12/27 23:21
GTKなんて大嫌い!
保守
78デフォルトの名無しさん:04/01/28 12:16
GTK+のラベルってタブストップ使えます?
Pangoで文字の重ね打ちがやりたいんですが。
>>78 こっちで聞いた方がいいかも
GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/
80デフォルトの名無しさん:04/02/03 17:08
もともとPerl/Tk を使っていて
今日から GTK+ の勉強を始めた者ですが、
Win32 の GTK+ でボタンのラベルに日本語文字列を表示するには
どうしたらいいですか?

button = gtk_button_new_with_label ("あいうえお");
とかやると
** (<unknown>:1080): WARNING **: Invalid UTF8 string passed to pango_layout_set_
text()
といわれてしまいます

http://www.a.phys.nagoya-u.ac.jp/~cyamauch/learning_gtk_win/learn_gtk_win-3.html
をあたり見ながら
#include "unicode.h"
というのもしてみましたが
そもそも unicode.h が見当たりません・・・。

環境:
Win2000
VC++ 6.0
GTK-Development-Environment-2.2.4.1.exe
>>80
ソースをUTF-8にして
8280:04/02/03 19:18
>>81
ソースを UTF-8にすると,VC++ で文字化けして
編集やビルドができなくなりました。
ソースはSJISのままで日本語を表示する方法はないのでしょうか?
(あるいはVC++の設定をどこか変えれば回避可能?)

たとえば,こんなこと(下記)をやろうとしています。
これだと、□□□□□のように表示されてしまいます。
"あいうえお"を "aiueo"に変えると aiueo が表示されます。

あと pango_font_description_from_string に指定できる名前の一覧は
どこで見ることができるでしょうか?
pango_*.h を一通り見ましたが分かりませんでした。
(いまの "MS Mincho 9"はあてずっぽうです)

----------------------------------------------------------
PangoFontDescription *font_description;
const char* defaultfontname = "MS Mincho 9";

gtk_set_locale();
gtk_init(NULL, NULL);
gtk_rc_parse("./gtkrc");

window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
button = gtk_button_new_with_label (g_locale_to_utf8("あいうえお",-1,NULL,NULL,NULL));

font_description = pango_font_description_from_string(defaultfontname);
gtk_widget_modify_font(GTK_WIDGET(button), font_description);
----------------------------------------------------------

GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/
8480:04/02/03 19:56
>>82
外人のサイトをうろついた結果、
とりあえず GtkSettings を使うやりかたで
MS明朝の30ポイントで日本語を表示できました。
(ソースコードはSJISのまま)

これは X11でいう ~/.Xdefaults を変えるようなものなんでしょうかね?
(まだよく分かっていない)

引き続き pango を使うやりかたの情報があれば
お待ちしています。

------------------------------------
const char* defaultfontname = "MS Mincho 30";
gtk_set_locale();
gtk_init(NULL, NULL);

GtkSettings *settings;
settings = gtk_settings_get_default();
g_object_set(G_OBJECT(settings), "gtk-font-name", defaultfontname,
NULL);

button = gtk_button_new_with_label (g_locale_to_utf8("あいうえお",-1,NULL,NULL,NULL));
button2 = gtk_button_new_with_label (g_locale_to_utf8("かきくけこ",-1,NULL,NULL,NULL));
---------------------------------------------
Windows / UNIX 両方で動く GUI ソフトを作ろうと、
GTK+ の勉強をはじめた者です。

Qt ライブラリの ListView は、こういうふうに
ttp://www.kde.gr.jp/~ichi/qt-2.3.2/qlistview-w.png
リストビューを階層表示できるっぽい ScreenShot がありますが、
GTK+ のリストビューでもこういうことって出来るんでしょうか?

ちょっと見てみたら、いいなぁ…と思ったもので……
>>85
gtk のリストビューってのがよくわかんないけど
GtkTreeView はどう?
8885:04/02/04 23:07
>>86 >>87

ありがとうございます。早速調べてみました。
そうです、こういうやつを探してたんです。
なるほど…進行度表示も出来るんですね。
早速試してみることにします。
教えていただいてありがとうございました。
89デフォルトの名無しさん:04/02/05 23:01
GLibは便利だね。とくにUNIX環境では。
GObjectも素敵だね。実行時の型判定やらは嬉しいね。
でもGTKって…ぶっちゃけどうなのよ?
90デフォルトの名無しさん:04/02/06 14:12
VC++ Enterprise Edition で gtkをスタティックリンクするには
どうやればいいですか?
>>90
……宝の持ち腐れ?
9290:04/02/09 09:06
>>91
実際どうやればいいんですかね?
MSDNにも無いし googleでも特に見つからないんですけど・・・。
(MFCに関する文献はありますが)
9490:04/02/09 10:39
プロジェクト→設定→一般→オブジェクト/ライブラリのところを
こう書き換えました:
libatk-1.0.dll.a libgdk-win32-2.0.dll.a libgdk_pixbuf-2.0.dll.a
libglib-2.0.dll.a libgmodule-2.0.dll.a libgobject-2.0.dll.a
libgthread-2.0.dll.a libgtk-win32-2.0.dll.a libjpeg.dll.a
libpango-1.0.dll.a libpangoft2-1.0.dll.a libpangowin32-1.0.dll.a
libpng.dll.a libpng12.dll.a libtiff.dll.a libz.dll.a vfw32.lib
intl.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib
advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib
odbccp32.lib

そうしたら、ビルドはできるんですが起動しません
(ダブルクリックしてもウンともスンともいいません)
ビルド時に以下のような警告が出ます
記述順序とかに問題がありますか?

libgdk-win32-2.0.dll.a(d000123.o) : warning LNK4078: 複数の ".text" セクションが異なる属性 (E0000020) で見つかりました
LINK : warning LNK4089: "d000007.o" へのすべての参照は /OPT:REF によって廃棄されます
LINK : warning LNK4089: "d000021.o" へのすべての参照は /OPT:REF によって廃棄されます
(中略・・・同様の警告が50個くらい)
>>94
lib*.dll.aってどう見てもgcc用のインポートライブラリだと思うけど。
>>94
> This will work but result in a huge, 14 MB executable!
(゚д゚)マズー
9790:04/02/17 08:58
http://www.dropline.net/gtk/
で配布されている Development Kit, Runtime Kit のGTKライブラリでは
スタティックリンクできないということでしょうか?

Source からビルドする際にスタティックリンク用の
ライブラリを作成するにはどうしたらよいですか?
ドキュメントを読みましたが記載がありません。

>>96
14MBのサイズなら問題ないのです。うちの場合。
9890:04/02/17 09:00
あるいは >>93 の ML では
DLLに含まれる *.a をすべてリンクすればよいと
書かれていますが,
DLLから *.a を取り出すにはどうすればよいのでしょうか?
99デフォルトの名無しさん:04/02/17 09:01
motif >>>>>>>>>>>>>>>>>>>>> gtk+
++とか--とか+-とかややこし杉
101デフォルトの名無しさん:04/02/17 10:43
+ , - , ++ , -- , ± , +- , -+
±…
>>100
一瞬BrainF*ckに見えた…
重症だな…
10590:04/02/17 15:59
>>104
見落としてました。すんません。
要は、Windowsに portingしてる人が「イラネ」って言ってるので無理
っていう話ですね。
106デフォルトの名無しさん:04/02/18 10:18
GTKアプリのウィンドウの中で
MCIによるAVIファイル再生とかをしたいのですが
GTKのウィンドウやウィジットから HWND型のハンドルを取得するには
どうしたらいいでしょうか?

ルートウィンドウだけは
hwnd = (HWND)GDK_ROOT_WINDOW();
で取得できましたが、他の一般のウィンドウやウィジットでの
やりかたがわかりません。
(このhwndを使って、
GTKアプリのウィンドウとは別のウィンドウとして
MCIのウィンドウを開いてAVIを再生するのはできています)

よろしくおねがいします
Cなのでgdkのヘッダを覗けば答は出るような気がする。
108106:04/02/20 11:18
>>107
MLの過去ログとgdk-win32.h を見た結果
HWNDの取得はできましたが
GTKのウィンドウとMCIのウィンドウが別個に出現してしまいます.

GtkWidget *avi_window = gtk_window_new(GTK_WINDOW_TOPLEVEL);
HWND hwnd_win = HWND(GDK_WINDOW_HWND(avi_window->window));
gtk_widget_show(avi_window);
mci_hWnd = MCIWndCreate(hwnd_win, hInst, 0, NULL);

GTKのウィンドウの中にMCIのウィンドウを入れる(containter_addのように)ことは
できないものでしょうか?
109106:04/02/20 12:42
解決しました
MCIは親ウィンドウが map されてないとNGみたいですね

GTKのウィンドウをつくって
そのウィンドウの map_event のハンドラ内で
HWND取得とMCIコールをすると
うまくいきました

不親切なアドバイスに感謝します
110107:04/02/21 23:59
不親切ですかそーですか。
私はGTK/GDKの知識はあるけどGTK/GDK on Win32の知識はないので
答は示せないもののギブアップしたままよりはよかろうと
ここから調べればたぐれるはずだというポインタを示したわけですが
何もかかない方がよかったですかね。
ともあれ解決できてよかったですね。さよーなら。

人に教えてもらってその態度はないよな
学生さんかしら?
社会人でも106みたいなふざけた奴はいるんだなこれが。
>>112
1から10まで全部教えてやってもワカラネと言うふざけたヤツよりは大分マシ。
>>110
生`
GTK for Win32 って不安定だって聞いたけど、本当に不安定なんですか?
116デフォルトの名無しさん:04/03/11 20:35
gtkmm使ってみたけど、リファレンスが完全に整備されてないのが痛いな・・
117デフォルトの名無しさん:04/03/23 09:03
gentoo linuxスレでのGtk+-2.4の話って、
http://pc3.2ch.net/test/read.cgi/linux/1076059699/871
マジですか?>bitmap fontが使えない。

#使う気力が激しく萎える..._| ̄|○
腐ってやがる。早すぎたんだ!
>>118
オットセイの薬がいいらしいよ。
gtk+
gtk2
gtk2-2
gtk+2
gtk+-2
gtk++

検索してゴチャゴチャ出てくるこれらは
全部同じライブラリなんですか?
はっきりいってわけがわかりません。
>>120
そうですか。
sodipodi というドローソフトをインストールしたが日本語が文字化けして使えん
gtkrcを直してもツールチップが化ける

英語で起動するにはどうすればいい?
123デフォルトの名無しさん:04/06/12 14:34
GTKでマルチプラットフォームっていっても中途半端なのかな
今流行りのJava/SWTで作ったほうがいいのかもしれんな
>>122
遅レスだが、
$ export LANG=C
$ sodipodi
でいいんじゃない?

うちでは化けないけど。
125デフォルトの名無しさん:04/07/11 22:28
Gtk+とQtってどっちがオススメですか?
他にいいものがあったらそれも勧めてください。
>>125
【GUIライブラリ】wxWindowsでのひょーん
http://pc5.2ch.net/test/read.cgi/tech/1052186697/
>>126
今はwxWidgetsというんですね。
バイナリには制限が無いとか嬉しいライセンスも魅力的。
有効活用させていただきます。ども。
質問スレから誘導?されてやってきました。

Gtkのイベント(シグナル?)についてお聞きしたいのですが、
独自イベントを作って通知&ハンドリングするには
どのようにコーディングすればよいのでしょうか?


よろしくお願いしますm(_ _)m
>>128
独自シグナルを追加した派生 widget を作る。

話題が大きすぎるぞ。
130デフォルトの名無しさん:04/08/30 01:28
>>129
お返事ありがとうございます(^-^)
派生widgetを作る方向で調査したいと思います。

> 話題が大きすぎるぞ。
gtkのメインループの中で処理を行いたい場合、通常このようなことは
しないのでしょうか?
win32の場合、独自イベントをメインループにポストするのはわりとよくある
やり口なので、gtkでも一般的な方法があると思い質問したのですが…

>>130
API直叩きならともかくWindowsでもMFCやらATLやらVCLなんかのクラスライブラリでは
メインループを隠蔽する方向に進んでると思うんだけどな…
gtk+もCで書かれてるとはいえOOなんだし。

できるできないは別として目指してる方向ではないのでは?
132デフォルトの名無しさん:04/08/30 23:56
>>131
そうかもしれません…。
でもその場合、他スレッドからメインループが動いているスレッドに処理を依頼する場合、
どういった手段をとるべきなんでしょうか?

すべての関数で排他制御を行うのも効率が悪いですし。

イベントの話がなぜマルチスレッドに飛躍するんだ?
gtk+使うんならgthread使えばなんとかできるんじゃないのかい。
>>132
小出しにせずに、最初から具体的に書かんと・・。
スレッドに依頼する処理にもいろいろあるだろ?
>>133-134
結局やりたいことは、排他制御に気を使わなくて済むように、
イベントループの動作するスレッドである処理を実行するよう、
別スレッドから依頼したいのです。

同じ処理をwin32で実現する場合、PostMessage()が一番気軽で手っ取り早いので、
同様の仕組みがGtkに用意されていないのか知りたいと思い、質問させていただきました。

>gthread
さっそく調べてみたのですが、web上の情報によると
本質的な機能はpthreadと変わらないようです。情報ありがとうございます。
http://www.mail-archive.com/[email protected]/msg14072.html
調べるって、自分でヘッダファイルとかドキュメントを見ることじゃなくて、
他人のコメントをwebで探すことを意味するのか……orz
Gtk+って5年前くらいにこれから流行ると睨んで少しかじったわけだが,
最近どーよ?
全然流行ってないような気がするんだが,気のせいだよね?
>>137
気がつかないほど良く使われてる
>>139
要は、他スレッドから何かの処理をメインループの中で実行させたい場合は、
他スレッドからg_idle_add()を呼び出して、g_idle_add()で追加したcallbackの中で
何かの処理をさせたり別の関数を呼ぶなりすればよいということですね。
calbackの中でFALSEを返せば二度とcallbackが呼ばれないことも分かりました。

立て続けに処理を依頼しても問題が起こらないようにするために何かロジックを
考えなければなりませんが、これで解決できそうです。

大変ありがとうございました。
&お騒がせしました > スレ住人の皆様
141デフォルトの名無しさん:04/09/24 17:17:30
久々にいじってみた。

G_DEFINE_TYPE系マクロは密かに嬉しい。
クラス定義時のつまらん定型コードが減らせる。

あとGtkUIManagerかなり楽ちん。
おかげでGtkItemFactoryはDeprecatedになってるが、
公式チュートリアルはまだそっち使ってるのか。
142デフォルトの名無しさん:04/09/27 00:33:14
お尋ねしたいのですが,XlibでのXFlushに相当する関数はGtk+だと何でしょうか?
たぶんgdk_flush()
144142:04/09/27 00:51:20
>>143
ありがとうございます.
まさにその通りでした.
145デフォルトの名無しさん:04/09/29 21:12:15
gtk_timeout_addだとインターバルがミリ秒単位の整数値しか取れないみたいですけど,
マイクロ秒単位で呼び出す関数ってありませんかね?
146デフォルトの名無しさん:04/09/29 21:40:58
なんでそんなことをしたいのか分からんし「タイムアウトの関数は、
他のイベント・ソースを処理するために削除 (Destroy) される可能性があることに注意して下さい。
そのため、それらの関数は正確な時間 (タイミング) に依存しないようにして下さい。」
とある。が、GLibのGTimer使えば、あるいは。
147デフォルトの名無しさん:04/09/29 23:11:33
>>145
usleepという手もあるけれど、Linuxだと10ms未満のソフトウェアタイマ処理は保証されていない。
マイクロ秒単位にしたいのならPCIボードでも買って来て
ハードウェアタイマによる割り込みを使用するのが吉だよ。
148デフォルトの名無しさん:04/09/30 02:47:21
それでもユーザプロセスでやるとするときつくない?
CPUが1GHzとして、マイクロ秒の精度でしようと思ったら
1000クロックしかない。この間に、割込みが起きて実行中のユーザプロセスから
カーネルに移り、プロセスをスイッチして、今度はそのユーザプロセスに処理を
移さないといけない。
149デフォルトの名無しさん:04/09/30 16:59:07
マルチメディアタイマーならSDLとか使うとよろし
150デフォルトの名無しさん:04/10/01 01:19:22
GTK+とGTK--、どっちがおすすめ?
151デフォルトの名無しさん:04/10/01 01:40:32
>>150
GTK+の方がお薦め。
GTK--はC++での開発に有利だけど、
C言語による一貫性がなくなる上、デフォルト以外に余計な物をインストール
しないといけないというデメリットがある。
そのインストールはときどき非常に面倒な依存性を持っていることがある。
152デフォルトの名無しさん:04/10/01 07:26:57
メンバ関数ポインタをコールバックできないのは痛いな。
153デフォルトの名無しさん:04/10/01 21:12:17
>>152
libsig++
154デフォルトの名無しさん:04/10/05 12:25:03
もしもgtkmmのコールバックがstaticオンリーだったら…ガクブル
155age:04/10/18 18:05:57
glibって思ったより大きいのな。
156デフォルトの名無しさん:04/10/31 16:09:42
157デフォルトの名無しさん:04/11/07 08:58:08
gtk_input_add()でファイルディスクリプタを監視したいんですが、
すごく短い間隔でファイルディスクリプタに書き込みがあると
正しくgtk_input_add()が呼ばれいんですが、そんなもんなんですか?
たとえばfdをGDK_INPUT_READで監視してて、
write(fd,str,SIZE);
write(fd,str,SIZE);
とすると、最初のwrite()しかgtk_input_add()が処理してくれないです。
write(fd,str,SIZE);
usleep(10000);
write(fd,str,SIZE);
とすると、2つとも処理してくれるんですが。。

158デフォルトの名無しさん:04/11/13 18:47:48
g_spawn_command_line_sync("dos program such as 'perl -v'")をwindows上で呼び出した場合、
DOSウィンドウ(gspawn-win32-helper.exe?)を表示させない為にはどうすればよいでしょうか?
159デフォルトの名無しさん:04/11/13 18:48:42
スマソ環境はmingw/gcc3.2.3/glib2.4.7です。
160デフォルトの名無しさん:04/11/13 22:51:21
結局gspawn-win32-helperのWinMainをmain()に置き換えて:%s/__argv/argv/g :%s/__argc/argc/してしまった。
取りあえずは動く。flへり9gy0p934ぽ45え
435

いいいいいいいいいいいいいいいいい4@−−−−−−−−−−−−−−−−−−−−rthg




えええええええええええええええtg0お9−^34444444444444tkgv0@−dさう
161デフォルトの名無しさん:04/11/22 15:59:12
162デフォルトの名無しさん:04/11/28 01:46:17
英語のメーリングリストでGtkObjectの例をGTKO AとかGTKO Bとか書いてあると、
ギコに空目してしまってしかたがない。
163デフォルトの名無しさん:04/12/01 04:46:44
164デフォルトの名無しさん:04/12/03 19:26:33
wxFIXED_MINSIZEをいちいちアンチェックするのがめんどくさいです
165デフォルトの名無しさん:04/12/06 01:38:58
聞こえなかったのかな




wxFIXED_MINSIZEをいちいちアンチェックするのがめんどくさいです
166デフォルトの名無しさん:04/12/06 01:52:17
>>165
ご苦労様です
167デフォルトの名無しさん:04/12/13 18:00:53
もしかしてもうすぐ2.6?
168デフォルトの名無しさん:04/12/17 09:36:51
GTK+-2.6 age
169デフォルトの名無しさん:04/12/18 12:47:42
GKeyFileやGOptionってGConfやpoptがあるのに。
なんでも自前で持とうと?
170デフォルトの名無しさん:04/12/18 14:17:41
>>169
レイヤーが違う。
もっと言えば、例えば過去にGNOMEのライブラリに入っていたものが、今はGTK+に移動してきたり
しているように、GLib/GTK+は下位レイヤーとして必要なものをすべて持とうという思想なのだろう。
実際、GNOMEに関係のないGLib/GTK+アプリってのは山ほどある。
171デフォルトの名無しさん:04/12/20 21:58:05
ああああああああああああああああああああああああああああああ!!!!!
VC++でGlibがコンパイルできーーーーーーーーーーーーーーん!!!!!!
172デフォルトの名無しさん:04/12/20 22:03:39
Windowsで使うのはめんどくさいよね。
173デフォルトの名無しさん:04/12/20 22:06:23
わけわからん。コロスゾ!nmake -f makefile.mscで全部まるっと
コンパイル通せよヴォケが!!
174デフォルトの名無しさん:04/12/20 22:26:53
Building GLib
=============

Again, first decide whether you really want to do this.

Before building GLib you must also have the libiconv library and GNU
gettext. Get prebuilt binaries of libiconv (1.9.1 or newer), and
gettext-runtime (0.13.1 or newer) from www.gimp.org/win32/downloads.html.
175デフォルトの名無しさん:04/12/20 22:39:45
何が上手くいかないかも書かない独り言は
176デフォルトの名無しさん:04/12/20 23:07:14
それはスマンカッタ。
gatomic.c(477) : error C4047: '関数' : 間接参照のレベルが 'volatile LONG *' と 'PVOID * 'で異なっています。
gatomic.c(478) : error C4047: '関数' : 間接参照のレベルが 'LONG' と 'PVOID' で異なっています。
gatomic.c(479) : error C4047: '関数' : 間接参照のレベルが 'LONG' と 'PVOID' で異なっています。
gatomic.c(490) : error C4047: '関数' : 間接参照のレベルが 'volatile LONG *' と 'gpointer * ' で異なっています。
gatomic.c(490) : error C4047: '関数' : 間接参照のレベルが 'LONG' と 'gpointer' で異なっています。
gatomic.c(490) : error C4047: '関数' : 間接参照のレベルが 'LONG' と 'gpointer' で異なっています。
gatomic.c(490) : error C4047: '==' : 間接参照のレベルが 'LONG' と 'gpointer' で異なっています。

とりあえずこのコンパイルエラーを今から追跡するとこだ。
177デフォルトの名無しさん:04/12/21 10:30:01
VCは知らんけど、
なんか適当なコンパイラオプションつければ黙らせられるんじゃないの?

178デフォルトの名無しさん:04/12/21 16:00:55
やっとGlibコンパイルできた〜・・・VCは6だと176のエラー出なかった。
なんかmakefileのパス名の罠が多くて疲れた〜・・・

次はGtkだ〜・・・
179デフォルトの名無しさん:04/12/21 20:02:38
Gtkの依存してるpangoの依存してるfontconfigがコンパイルできないー
VC++用のMakefileが無いー
180デフォルトの名無しさん:04/12/22 00:07:01
これは先人からの忠告だ。
VC++で全体をビルドするのはやめておけ。
限りなく不可能に近い。
MinGWでビルドするほうがいい。
181デフォルトの名無しさん:04/12/22 00:32:38
関係ないけど、VC++のコンパイラはときどき挙動が変だから気に入らない。
182デフォルトの名無しさん:04/12/22 15:57:41
先人の忠告を受け入れてfreetypeとfontconfigはバイナリを持ってきてpangoを
コンパイルした!次はatkだ〜・・・の前にGtkのコンパイルをちょっと進めたら
gtk/stock-iconsにvc用のmakefileが無いからgtkのmakeが止まる〜・・・
後回しにしてatkを先にしようと思ったらatkもvc用のmakefile無い〜・・・
183デフォルトの名無しさん:04/12/23 02:49:56
makefile自分で書いたー。全部Gtkコンパイルとおったー

C:\GIMP\gtk+-2.6.0\tests>simple.exe

** (simple.exe): WARNING **: No builtin or dynamically loaded modules
were found. Pango will not work correctly. This probably means
there was an error in the creation of:
  'C:\GIMP\pango\pango\etc\pango\pango.modules'
You may be able to recreate this file by running pango-querymodules.

(simple.exe): GLib-GObject-CRITICAL **: file gobject.c: line 1562: assertion `G_IS_OBJECT(object)' failed

(simple.exe): GLib-GObject-WARNING **: cannot register existing type `PangoFont'

** (simple.exe): CRITICAL **: file pango-engine.c: line 68: assertion `PANGO_IS_FONT (font)' failed



むごおおおおおお!!!クラッシュすんなあああ!!!!
184デフォルトの名無しさん:04/12/23 21:24:05
>>176のエラーはこれだった↓。
http://lists.sourceforge.jp/mailman/archives/gtklab-devel/2004-October/000020.html

んで全部VC7でコンパイルし直した。>>183のエラーはpangoのモジュールを
コンパイルすんの忘れてたからだった。で、一応全部テストも動いた。

んが、日本語が文字化けするし。なんか全部ビルドし終わって、必要なのを
libとかetcにまとめんのがよくわからん。何をどこに配置すればいいのかどこにも
書いてないし、何これ。makefile.in解読すんの?
185デフォルトの名無しさん:04/12/28 10:59:25
>>184
そうか、それはよかったな。化けるので正解なんだよ。
186デフォルトの名無しさん:05/01/08 00:08:32
GTK+でシグナル処理中に画面を再描画させる関数とか無いの?調べたけど出てこない
187デフォルトの名無しさん:05/01/08 01:57:21
gtk_events_pending()
188デフォルトの名無しさん:05/02/08 03:57:11
gtk+2.6のwindowsバイナリ来ましたよ。
http://www.gimp.org/~tml/gimp/win32/downloads.html
189デフォルトの名無しさん:05/02/08 04:05:13
すげー不安定だな
190デフォルトの名無しさん:05/02/09 05:52:54
             . ィ
._ .......、._    _ /:/l!
 :~""''.>゙' "~ ,、、''‐'、|         _    またまたご冗談を
゙、'、::::::ノ:::::::_,.-=.  _〜:、         /_.}'':,
 ``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
 ,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:'  ノ゙ノブ
"   .!-'",/  `'-‐'') /\ `/ でノ-〈
 .-''~ >'゙::    ‐'"゙./  ヽ.,'   ~ /
   //:::::       ',    /    ,:'゙

       ,.ィ
''==ァ-‐‐,'゙<l    _,,   ご冗談を
`、:/::r'゙゙'_ェ'゙゙i、._ /ラノ
,=キヅ `'ラ/ヾ/ (シフ
  ,ケ::   ',. /  ,:'゙

ー;-‐<{
X,.^ャ~ト β   冗ニャンを
'´'   ` '
191デフォルトの名無しさん:05/02/09 15:16:54
+だとか--だとかtcltkだとか多すぎ
いい加減統一しろ
192デフォルトの名無しさん:05/02/09 15:21:51
またまたご冗談を
193デフォルトの名無しさん:05/02/09 16:03:44
Win32だとかMFCだとかActiveXコントロールだとか多すぎ
いい加減統一しろ

Wiindowsで言うとこんなとこか?
194デフォルトの名無しさん:05/02/09 16:22:54
>>193
それに応えて「WinFXにご期待ください」なのかしらん?
195デフォルトの名無しさん:05/02/09 16:29:34
tcltkは関係ないw
196デフォルトの名無しさん:05/02/13 14:53:29
glibはなんでexpat使わないのか
197デフォルトの名無しさん:05/02/17 23:59:29
panedで境界が動かされた事を通知するシグナル名を教えて頂けないでしょうか。
198デフォルトの名無しさん:05/02/18 00:28:44
199デフォルトの名無しさん:05/02/18 06:24:47
>>198
見ましたが関数の型だけで何が起こったときのシグナルかと言う情報が不足しているように感じます。
200デフォルトの名無しさん:05/02/18 23:04:18
レベル低下が甚だしいね。
201デフォルトの名無しさん:05/02/18 23:28:18
>>200
一行知った風な事を書く厨房とかが出だしたら末期だ。
かなしきかな。
↑なにこの白痴w わざわざ二行に分けなくていいから。

>>199
シグナル名見て分からないならやめたら。誰も引き留めないだろうし。
203デフォルトの名無しさん:05/02/19 00:47:39
204デフォルトの名無しさん:05/02/19 00:53:21
おっぱい!
205デフォルトの名無しさん:05/02/19 01:08:29
おっぱい!
206デフォルトの名無しさん:05/02/19 03:52:11
ただでさえ人少ないんだから、ちょっとしたことで出て行けとか言うのはやめようぜ。
207デフォルトの名無しさん:05/02/19 09:20:54
>>202
http://mail.gnome.org/archives/gtk-app-devel-list/2002-August/msg00194.html
マニュアルにないnotify::positionシグナルで対応するみたいだな。

何も知らない、調べてもいない(つまり質問者と完全に同レベル)くせに偉そうですね♪
お前みたいなのが著しいレベル低下を招いているのでは?
208デフォルトの名無しさん:05/02/19 09:22:57
>>203
日本語版はシグナルハンドラのプロトタイプ宣言すら載ってないわけで。
マニュアル読めと言う前にお前が読んだのかと子一時間説教したいよな。
209デフォルトの名無しさん:05/02/19 10:15:58
207は202の名前欄見ろ。間抜けw
208は英語すら碌に読めない低能か。
210デフォルトの名無しさん:05/02/19 10:25:54
質問者は既に見てないんだが
211デフォルトの名無しさん:05/02/19 10:36:11
へぇ。なんでキミにそれが分かるのか聞いていい?
212デフォルトの名無しさん:05/02/19 10:47:24
解決しました

不親切なアドバイスに感謝します
213デフォルトの名無しさん:05/02/19 12:10:51
なりすますなよ
214デフォルトの名無しさん:05/02/19 12:14:32
お前等全然つかえねーな。
215デフォルトの名無しさん:05/02/19 13:00:42
解決しました

不親切なアドバイスに感謝します
216デフォルトの名無しさん:05/02/19 13:02:16
質問者アホすぎて笑える。
217デフォルトの名無しさん:05/02/19 13:04:11
もと質問した人間ですが。
なんか思い出すな。このスレ見てると。

クラスで話題についてこれない奴が。
急に別の人の噂話(悪口)の話題に口を出して。
周りはそいつの変化が面白いから、口裏合わせて話してやる。
そうすると、あたかもそいつも仲間になったつもりになって
必死に悪口を言い出す。

周りは「お前もナー」っと思いながら、笑いを堪えつつ
相手にしてやる。
そのうちあきて、相手をしなくなってまた元に戻る。

クラスでハブにされる奴って、自分より下の奴を必死に
見つけて叩こうとするんだよね。
必死さに笑っちゃうよ。
218デフォルトの名無しさん:05/02/19 13:14:47
お前もナー
219デフォルトの名無しさん:05/02/19 13:49:49
池沼扱いされてからのキレっぷりが素晴らしいな。
220デフォルトの名無しさん:05/02/19 13:53:45
221デフォルトの名無しさん:05/02/19 22:51:24
ワロタ
222デフォルトの名無しさん:05/02/22 22:42:04
gtk/windowsの欠点はどんなのがあるの?
・Look&Feelが浮いている → 2.6以降標準付属のwinpで解決した?
・そのままでは日本語のインライン入力が出来なかった → 2.6以降標準のimmoduleだっけ?で解決した?
・配布にいろいろdllが必要
・いまだに不安定?
223デフォルトの名無しさん:05/02/22 22:43:31
winp -> wimp
immodule -> imime
224デフォルトの名無しさん:05/02/24 00:44:55
(VH)Panedの高さを得るにはどうすれば良いのでしょうか。

size,heightは存在しないようです(glade/rubyで製作しています。)
225デフォルトの名無しさん:05/02/24 00:52:22
(GtkWidget *)paned_widget->allocation.height
226デフォルトの名無しさん:05/02/24 00:55:58
>>224
CのAPIならそいつらの親クラスであるGtkPanedに
gtk_paned_get_position()って関数がある。

それに対応するものを探してみれ
227デフォルトの名無しさん:05/02/24 00:58:13
違うだろう。
228デフォルトの名無しさん:05/02/24 01:23:18
>>225さんの方法で解決しました。
>>226さんのは既に試していて-1が返ってきてしょぼんぬしていた所でした。

お二人とも御協力頂きありがとうございました。
229デフォルトの名無しさん:05/02/26 17:48:32
panedの素婦りったのサイズの取得方法をご存じの方、ご教示ください。
230デフォルトの名無しさん:05/02/26 17:51:39
231デフォルトの名無しさん:05/02/26 17:56:44
↑うざい
232デフォルトの名無しさん:05/02/27 00:57:14
なんか流行してるのか?
233デフォルトの名無しさん:2005/03/27(日) 02:09:11
GQuarkの存在意義てなんだ?
234パックマン:2005/03/30(水) 13:15:36
GTKのスクロールバーのデザインは変更できるんでしょうか?
矢印ボタンとかをビットマップファイルを貼り付けてかっこよくできないもんでしょうか?
235デフォルトの名無しさん:2005/03/30(水) 20:20:04
Gtk ウィジェットの中で 2D のグラフィックを表示したい場合に
お勧めのライブラリとかありますでしょうか。
236デフォルトの名無しさん:2005/03/30(水) 20:31:21
>>235
gdk
237デフォルトの名無しさん:2005/03/30(水) 22:35:42
thanx.
gdk のドキュメントって少ないね。
238デフォルトの名無しさん:2005/03/31(木) 14:38:55
>>234
ttp://themes.freshmeat.net/browse/958/
とか。いくらでも、お好きなようにどうぞ。

っていうか、どんな環境でもデフォルトでいくつかテーマ入ってると思うけどなぁ。
239デフォルトの名無しさん:皇紀2665/04/01(金) 01:03:45
>>238

ありがとう。
こういうテーマを自分で作りたいんだけど、どっかに資料ないですかね?
かっこいいテーマを見つけてくるのもそれはいいんだけど、自分で作れれば無敵でしょ?
240238:2005/04/02(土) 23:53:28
>>239
うーん、自分はテーマ作るにあたっての資料とか、ツールとかは知らないです。スマソ。
けど基本的にgtkrcが分かればそれだけな気もするし、あとは既存のテーマの真似をすれば十分オリジナルも作れるんじゃないでしょうか。
カッコイイのできたらもちろん公開キボンヌ。っす。
241デフォルトの名無しさん:2005/04/05(火) 23:30:50
gdk_draw_* 関数についてですが、以下の理解で良いでしょうか?

基本的には gtk_main() を呼び出す前には使えない
特殊な事情が無ければ、expose イベントハンドラの中で使う

http://mail.gnome.org/archives/gtk-list/1997-December/msg00279.html

gtk_widget_show() みたいに main() 関数の中で使いたかったのですが・・・。
242デフォルトの名無しさん:2005/04/06(水) 16:55:49
>>241
gtk_main() の前でないとダメなん?
widget->window がなくて困った、とかなら realize イベントの
コールバック内とかでもいいと思うけど。
243デフォルトの名無しさん:2005/04/06(水) 20:24:40
>>242
イベントドリブンに入る前に自前のイニシャライズ処理(drawable に
表示する絵を用意する)を入れたかったのですが、イベントハンドラの
中で初期化する様に変更しました。

困っていたのは、ご指摘の通り、drawable が無かったという点です。
こちらは pixmap には gtk_main() 以前に描画可能という事に気付き、
一応可能である事を確認しました。

説明が下手でスミマセン。
244デフォルトの名無しさん:2005/04/08(金) 14:13:19
特定のウィジェットにプログラムでフォーカスを当てるにはどうしたら良いのでしょうか?
画面の構成は
Window−Fixed−Entry
トップレベルウィンドウにFixedウィジェットが載り、その上にEntryウィジェットが載っていて、このEntryウィジェットにフォーカスを当てたいのです。
gtk_window_set_focus()という関数を見つけたのですが上記構成でEntryウィジェットを指定する書き方がわかりません。
助けてください。
245デフォルトの名無しさん:2005/04/09(土) 02:43:38
>>244
gtk_widget_grab_focus()じゃだめか。
246244:2005/04/11(月) 09:55:44
>>245
バッチリでした。ありがとう。
あんたはええ人や!
247デフォルトの名無しさん:2005/04/18(月) 20:09:44
日本語の文字列を表示させるサンプルありませんか?

現在 gdk_draw_string() の中で gtk_style_get_font() でフォントを取得して
文字列を表示させているのですが、日本語が文字化けします。
バージョンは gtk 2.0 です。
248デフォルトの名無しさん:2005/04/18(月) 20:26:49
>>247
どこに描こうとしてるのかわかんないけど、
pango とかには UTF-8 で渡すんだと思うがどう?

ついでに、その2つの関数はもう古いような記憶が…。
249デフォルトの名無しさん:2005/04/18(月) 21:21:49
>>248
GdkPixmap に UTF-8 で書き込んでいます。EUC も試してみましたが、
ダメでした(そもそもフォントが違っている気がします)。

Pango を使うのは少し大げさな感じがするので、そこだけ Xlib を使おうか
とも考えています…。

http://www-6.ibm.com/jp/developerworks/unicode/010525/j_u-pango1-index.html
http://www-6.ibm.com/jp/developerworks/unicode/010907/j_u-pango2-index.html
250デフォルトの名無しさん:2005/04/19(火) 08:16:08
http://www.gnome.gr.jp/ が Bad Gateway で繋がらないんだけど、
うちだけかな。
251デフォルトの名無しさん:2005/04/19(火) 17:44:14
>>250
ノシ
向こう側で設定ミスってるのかも名。
252249:2005/04/20(水) 01:47:28
Pango が思ったより楽チンだったので Pango 使ってみます。
Gtk より下のレイヤーはドキュメントが少なくて辛い。
253244:2005/04/20(水) 10:52:26
Linux+GTKでプログラミングしているんですが、フォントサイズ(例えばテキストウィジェットの中の)を変更する関数ってあるのでしょうか?
254デフォルトの名無しさん:2005/04/20(水) 21:42:06
Web 直ったみたいだね。ヨカッタヨカッタ.

cairo が Gtk+ に入ったけど、libart はどうなるのかな。
255デフォルトの名無しさん:2005/04/20(水) 22:32:55
>>253

 gtk_widget_set_styleとかgtk_widget_modify_styleとかかな。GtkWidgetから派生している物なら、
これで行ける物が多い。

# Gtk+2なら、DevHelpは必須アイテム。
256244:2005/04/26(火) 11:10:52
透明のボタンやテキストウィジェットを作ることは出来るんでしょうか?
あるいはピックスマップを特定のテキストウィジェットの背景にすることは可能ですか?
257デフォルトの名無しさん:2005/04/26(火) 11:17:18
>>256
出来たらsageでお願いします。
258デフォルトの名無しさん:2005/04/26(火) 11:57:06
ageでも結構です。
259デフォルトの名無しさん:2005/04/26(火) 12:19:00
sage
260デフォルトの名無しさん:2005/04/26(火) 12:45:25
>>256
そうすることで何をしたいのか書いた方がいい。
261デフォルトの名無しさん:2005/04/26(火) 12:48:19
禿げでも結構です、メール欄に何か入れて下さい。
262256:2005/04/27(水) 18:32:02
>>260

これは失礼。
やりたいことは2つあって、

1.文字(テキストウィジェット等)の背景に絵を表示したい。
   例:スーパーインポーズみたいな感じ
2.ボタン(gtk_container_addでピックスマップを貼り付けている)をクリックした時に
 再描画に時間がかかり(?)0.5秒くらいボタンが白くなる(ボタンの背景色?)のを
 解決したい。

この2点です。
何か良い知恵は無いものでしょうか?
263デフォルトの名無しさん:2005/07/19(火) 19:28:09
保守ついでに質問。
WindowsでのGTK+って今どうなってんの? 安定してるの?
264デフォルトの名無しさん:2005/08/29(月) 23:44:36
GTKで、現在シフトボタンが押されているかどうか判定する方法ありますか?
WindowsのGetAsyncKeyState関数みたいなのがあると嬉しいのですが。
よろしく。
265デフォルトの名無しさん:2005/10/07(金) 08:30:18
Gtk+2.0にて、プログレスバーの進捗を表示するバー部分(あの部分の正式名称を
知らないので…)の色を変えたいのですが、どのようにしたら良いのでしょうか。

rcファイルを色々弄ってみたのですが、GtkProgressでもGtkProgressBerでも
文字や背景色が変わるだけで、進捗表示バーの色は変わりませんでした。
現在は、青色なんですが、別のアプリとかでは白い奴を見たので変えられる
と思うのですが…。

該当ドキュメントが掲載されていそうなところへのポインタでもいいので、
ご存知の方いらっしゃいましたらよろしくご教授お願いします。
266デフォルトの名無しさん:2005/10/08(土) 14:57:12
>>264
亀レスだが(なんせGTK+を知ったのが一昨日だ)、
gtk_key_snooper_install() でキーの押下状態を自前で管理すりゃいいんじゃないか。試してないが。

で、過疎の流れを無視して俺も質問させてくれ。
Windows で wimp を使いたいんだが、libwimp.dll って配るときどうすりゃいいんだ?
LGPLのGTK+ランタイムもあわせて配れば手間がないと思ってたんだが、
libwimp.dll をどこに置いていいのかわからん。
自分の環境なら (GTK+を入れたところ)/lib/gtk-2.0/2.0.0/engines/ でいいんだが……。
それともそういうもんじゃない?

つーかなんで rc ファイルの module_path がなくなってるかなあ。
267デフォルトの名無しさん:2005/10/08(土) 17:20:10
>>265
rcのstyleで
base[SELECTED]=colorname
は?
268266:2005/10/10(月) 02:20:42
>>266、自己解決しちまった。

探索場所が (GTK+)/lib/gtk-2.0/2.X.X/engines/ だって読んで混乱してたんだが、
よく考えたら DLL のあるパス ((GTK+)/bin/) から探索してるんだよなこれ。
だからアプリと同じディレクトリに GTK 絡みの DLL 全部放り込んで、
そこから ../lib/gtk-2.0/2.X.X/engines/ ってディレクトリ作って libwimp.dll を置いたら一発だった。

つーか GIMP 入れたことあるんだから気づけよ俺……。
269デフォルトの名無しさん
gtk+-2.8だめだ……
cairoのせいで埋め込みビットマップフォント表示してくれない……
vine seed の埋め込みビットマップパッチあてたら表示はするけど崩れる……
gtk2をつかうアプリケーション起動するとxqbiffが落ちる……
gtk+-2.8だめだ……