トップページ⇒tech
269コメント82KB

GTK+/Glade/gtkmm

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
GTK+
http://www.gtk.org/
Glade
http://glade.gnome.org/
gtkmm
http://www.gtkmm.org/

wingtk
http://wingtk.sourceforge.net/
Gtk#
http://gtk-sharp.sourceforge.net/

GTK+ for Win32(dat落ち中)
http://pc2.2ch.net/test/read.cgi/tech/1007479398/l50
0002棄教者 ◆egKIKYO7cg NGNG
2get
0003名無しさん@XEmacsNGNG
やっぱこれからのUn*xのGUIはGTK2+だよな。
emacsとか、mozillaとかgtk2+対応してきてるし。
0004相互リンクNGNG
GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/l50
0005デフォルトの名無しさんNGNG
(gtkmm があるとはいえ)いまどきCベースだし。
この板じゃ盛り上がることも期待できないし。
俺Qtの方が好きだし。
0006和書NGNG
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日発行
絶版?
0007デフォルトの名無しさんNGNG
Gtk+ は各種言語へのバインドがあるのが良いね。
0008デフォルトの名無しさんNGNG
gtkmmってまともにMingwで使える?
もし使えるんならちょっとやってみようかなとも思うけど、
昔出来なかったから wxWindows にしちゃった。
0009デフォルトの名無しさんNGNG
>>8
インストーラあり(実行/開発環境含む)
http://www.pcpm.ucl.ac.be/~gustin/win32_ports/
0010デフォルトの名無しさんNGNG
キュー(・∀・)ティ
http://www.trolltech.com/
0011デフォルトの名無しさんNGNG
>>10
QTはWindowsではVC用のしか提供されていないのが痛いな。
まあ、Cygwin(MinGW)でビルドすればいいんだろうけど誰もやらないよね。
00128NGNG
>>9
うぉ、こんなの今はあるのかぁ・・・アリガト
どーしようかなぁ。ソースレベルでLinux等と互換性が取れるんだったら
wxWindowsからの乗り換えも検討しようかなぁ。
使ってる方どないでしょ?一応自分でもやってみようとは思うのですが、
なにしろ gtkmm の勉強から初めねばならんので出来れば教えて下ちい。
0013デフォルトの名無しさんNGNG
>>12
gtkmm つかってる2ちゃんブラウザ
http://www.venus.sannet.ne.jp/thomas/
0014デフォルトの名無しさんNGNG
>>11
マジレスするとQt2系列はCygwinで動いている。
Cygwin+Xでザウルス開発用にQt/Embeddedのエミュも動いてるし。

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

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


001911NGNG
>>18
いや、Xがいるってことです。まだlibw11は実用ではないみたいですから。
0020山崎渉NGNG
(^^)
0021デフォルトの名無しさんNGNG
0022デフォルトの名無しさんNGNG
0023山崎渉NGNG
   ∧_∧
  (  ^^ )< ぬるぽ(^^)
0024デフォルトの名無しさんNGNG
0025デフォルトの名無しさんNGNG
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
0026おむこさん志望 ◆QtGqCwfDSA NGNG
Gauche ( R5RS 準拠の Scheme 解釈系)
http://www.shiro.dreamhost.com/scheme/gauche/packages-j.html
Objective Caml
http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgtk.html
Ruby
http://ruby-gnome2.sourceforge.jp/

gnome2 スレ
http://pc.2ch.net/test/read.cgi/linux/1003416100/
0027デフォルトの名無しさんNGNG
gtk2-perl

http://gtk2-perl.sourceforge.net/
0028デフォルトの名無しさんNGNG
gtkmm 日本語メーリングリスト(総投稿数2通ですが)
http://www.freeml.com/info/gtkmm-jp
gtkmm本家のほうのメーリングリスト
http://www.gtkmm.org/mailinglist.shtml
0029デフォルトの名無しさんNGNG
*** 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.
0030デフォルトの名無しさんNGNG
*** 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)
0031デフォルトの名無しさんNGNG
*** 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
0032デフォルトの名無しさんNGNG
Intiってどうよ
http://inti.sourceforge.net/index.html
0033山崎渉NGNG
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉
0034デフォルトの名無しさんNGNG
ワラタ
0035デフォルトの名無しさんNGNG
ここは何するスレですか?
0036デフォルトの名無しさんNGNG
あんまり伸びてないな。。
GTKとQtってどっちがいいだろうか。
0037デフォルトの名無しさんNGNG
>>36
GTKでプログラムする人ってやっぱGNOME派なのか?
0038デフォルトの名無しさんNGNG
>>37
そうとも限らないと思うが。
ttp://sylpheed.good-day.net/
0039デフォルトの名無しさんNGNG
ところで、QTマンセーな連中はマジメにgtkmmを
見たことがあるのだろうか?
FAQにもあるとおり、独自プリプロセッサが必要だし、
標準C++ライブラリとの相性も悪いし。

もちろん実績と、gtkmmがバインディングであるゆえの
わずらわしさはあるだろうが、純粋にToolKitとして
両者を比較したらどうなる?
0040デフォルトの名無しさんNGNG
QTはC++ネイティブだから偉いんです。
0041デフォルトの名無しさんNGNG
QTはC++ネイティブだからでかいんです。
0042山崎 渉NGNG

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄
0043デフォルトの名無しさんNGNG
Win32のGTKってまだ安定してないの?
0044デフォルトの名無しさんNGNG
>>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プロトコルではぜんぜん問題なく日本語まで使えたよ。

唯一の問題は・・・ダイアログのボタンの位置か。マジで。
0045デフォルトの名無しさんNGNG
FL(・∀・)TK
http://seriss.com/people/erco/fltk-videos/tutorial-fltk-hello.html
0046山崎 渉NGNG
(^^)
0047デフォルトの名無しさんNGNG
よう喋る外人だ
0048デフォルトの名無しさんNGNG
☆ ☆ ☆ http://www.gals-cafe.com ☆ ☆ ☆

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

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

0051デフォルトの名無しさんNGNG
すみません。
わかりません。
0052デフォルトの名無しさんNGNG
GTK+を使うメリットを教えてください。
0053デフォルトの名無しさんNGNG
>>50
gtk-demo 見れ

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

ScrolledWindowにTreeをaddしたらこの警告がでる。
Treeはスクロール可能なwidgetではない?
どういうことだろう。
0058デフォルトの名無しさんNGNG
C++だYO!
005957NGNG
自己解決。add_with_viewportを使ったら警告がでなくなった。
ここで不思議なのが、CListの場合は add_with_viewport じゃなくて
add で登録しているのに警告がでない。
CListとTreeは何が違うんだろうか。
0060デフォルトの名無しさんNGNG
Tree,Listは確か古い。そのためにスクロールできない。
CTreeを使いなさい。これも2.0からすると古いが。
0061デフォルトの名無しさんNGNG
ScrolledWindowと組み合わせればスクロールできるよ。
0062デフォルトの名無しさんNGNG
gtkmmの入門書とかでないかなあ
0063デフォルトの名無しさんNGNG
聞きにきたが、寂れすぎダ
0064デフォルトの名無しさんNGNG
>>63
今はQTが主流なんかな?
0065デフォルトの名無しさんNGNG
QtのWin32版がフリーであれば迷わずQt使ってみるんだが・・・
0066デフォルトの名無しさんNGNG
俺はもうQtは使ってないよ。>>65の理由で。
0067デフォルトの名無しさんNGNG
C#やDにも移植されてるっぽいからな。
そういうのを使ったらまだマシになるかな?
0068デフォルトの名無しさんNGNG
age
0069デフォルトの名無しさんNGNG
個人的にはGTK+ってC/C++用のGUIライブラリというよりもむしろ
モダンなTcl/Tkって印象のほうが強いんだが。
0070デフォルトの名無しさんNGNG
ところでWindowsでgimp以外のGTK+使ったソフトをランタイム含めて入れてくれる人っているのかなぁ?
0071デフォルトの名無しさんNGNG
記述性を考えると、Tcl/Tk の方がモダンな気がする。
Tk は C から使う時も Tcl 経由なのがアレだけど。
0072デフォルトの名無しさんNGNG
>>70
sylpheed 入れてまつ。
0073デフォルトの名無しさんNGNG
別に別途入手とかシステムフォルダにDLL突っ込むとかでなければ
GTK+使ってるかどうかなんか誰も気にしない気がするんだが。
0074デフォルトの名無しさんNGNG
Look & Feel が Windows とはちがうから「気にしない」は無理かと。
0075デフォルトの名無しさんNGNG
http://www.dropline.net/gtk/download.php
ランタイムは↑でダウンロードしてねっていうのはやっぱりマズイですか・・・
0076デフォルトの名無しさんNGNG
GTKなんて大嫌い!
0077デフォルトの名無しさんNGNG
保守
0078デフォルトの名無しさんNGNG
GTK+のラベルってタブストップ使えます?
Pangoで文字の重ね打ちがやりたいんですが。
0079デフォルトの名無しさんNGNG
>>78 こっちで聞いた方がいいかも
GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/
0080デフォルトの名無しさんNGNG
もともと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
0081デフォルトの名無しさんNGNG
>>80
ソースをUTF-8にして
008280NGNG
>>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);
----------------------------------------------------------

0083デフォルトの名無しさんNGNG
GTK プログラミング!!
http://pc.2ch.net/test/read.cgi/linux/995808691/
008480NGNG
>>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));
---------------------------------------------
0085デフォルトの名無しさんNGNG
Windows / UNIX 両方で動く GUI ソフトを作ろうと、
GTK+ の勉強をはじめた者です。

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

ちょっと見てみたら、いいなぁ…と思ったもので……
0086デフォルトの名無しさんNGNG
>>85
gtk のリストビューってのがよくわかんないけど
GtkTreeView はどう?
0087デフォルトの名無しさんNGNG
>>85
サンプルはこちら。
http://images.google.co.jp/images?q=GtkTreeView
008885NGNG
>>86 >>87

ありがとうございます。早速調べてみました。
そうです、こういうやつを探してたんです。
なるほど…進行度表示も出来るんですね。
早速試してみることにします。
教えていただいてありがとうございました。
0089デフォルトの名無しさんNGNG
GLibは便利だね。とくにUNIX環境では。
GObjectも素敵だね。実行時の型判定やらは嬉しいね。
でもGTKって…ぶっちゃけどうなのよ?
0090デフォルトの名無しさんNGNG
VC++ Enterprise Edition で gtkをスタティックリンクするには
どうやればいいですか?
0091デフォルトの名無しさんNGNG
>>90
……宝の持ち腐れ?
009290NGNG
>>91
実際どうやればいいんですかね?
MSDNにも無いし googleでも特に見つからないんですけど・・・。
(MFCに関する文献はありますが)
0093デフォルトの名無しさんNGNG
Static linking in GTK Windows
http://mail.gnome.org/archives/gtk-app-devel-list/2003-September/msg00024.html
009490NGNG
プロジェクト→設定→一般→オブジェクト/ライブラリのところを
こう書き換えました:
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個くらい)
0095デフォルトの名無しさんNGNG
>>94
lib*.dll.aってどう見てもgcc用のインポートライブラリだと思うけど。
0096デフォルトの名無しさんNGNG
>>94
> This will work but result in a huge, 14 MB executable!
(゚д゚)マズー
009790NGNG
http://www.dropline.net/gtk/
で配布されている Development Kit, Runtime Kit のGTKライブラリでは
スタティックリンクできないということでしょうか?

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

>>96
14MBのサイズなら問題ないのです。うちの場合。
009890NGNG
あるいは >>93 の ML では
DLLに含まれる *.a をすべてリンクすればよいと
書かれていますが,
DLLから *.a を取り出すにはどうすればよいのでしょうか?
0099デフォルトの名無しさんNGNG
motif >>>>>>>>>>>>>>>>>>>>> gtk+
0100デフォルトの名無しさんNGNG
++とか--とか+-とかややこし杉
0101デフォルトの名無しさんNGNG
+ , - , ++ , -- , ± , +- , -+
0102デフォルトの名無しさんNGNG
±…
0103デフォルトの名無しさんNGNG
>>100
一瞬BrainF*ckに見えた…
重症だな…
0104デフォルトの名無しさんNGNG
>>98
http://mail.gnome.org/archives/gtk-app-devel-list/2003-September/msg00027.html
010590NGNG
>>104
見落としてました。すんません。
要は、Windowsに portingしてる人が「イラネ」って言ってるので無理
っていう話ですね。
0106デフォルトの名無しさんNGNG
GTKアプリのウィンドウの中で
MCIによるAVIファイル再生とかをしたいのですが
GTKのウィンドウやウィジットから HWND型のハンドルを取得するには
どうしたらいいでしょうか?

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

よろしくおねがいします
0107デフォルトの名無しさんNGNG
Cなのでgdkのヘッダを覗けば答は出るような気がする。
0108106NGNG
>>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のように)ことは
できないものでしょうか?
0109106NGNG
解決しました
MCIは親ウィンドウが map されてないとNGみたいですね

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

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

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

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

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

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

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

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


よろしくお願いしますm(_ _)m
0129デフォルトの名無しさんNGNG
>>128
独自シグナルを追加した派生 widget を作る。

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

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

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

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

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

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

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

>gthread
さっそく調べてみたのですが、web上の情報によると
本質的な機能はpthreadと変わらないようです。情報ありがとうございます。
http://www.mail-archive.com/[email protected]/msg14072.html
0136デフォルトの名無しさんNGNG
調べるって、自分でヘッダファイルとかドキュメントを見ることじゃなくて、
他人のコメントをwebで探すことを意味するのか……orz
0137デフォルトの名無しさんNGNG
Gtk+って5年前くらいにこれから流行ると睨んで少しかじったわけだが,
最近どーよ?
全然流行ってないような気がするんだが,気のせいだよね?
0138デフォルトの名無しさんNGNG
>>137
気がつかないほど良く使われてる
0139デフォルトの名無しさんNGNG
>>135

http://www.gtk.org/faq/#AEN500
0140デフォルトの名無しさんNGNG
>>139
要は、他スレッドから何かの処理をメインループの中で実行させたい場合は、
他スレッドからg_idle_add()を呼び出して、g_idle_add()で追加したcallbackの中で
何かの処理をさせたり別の関数を呼ぶなりすればよいということですね。
calbackの中でFALSEを返せば二度とcallbackが呼ばれないことも分かりました。

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

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

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

あとGtkUIManagerかなり楽ちん。
おかげでGtkItemFactoryはDeprecatedになってるが、
公式チュートリアルはまだそっち使ってるのか。
0142デフォルトの名無しさんNGNG
お尋ねしたいのですが,XlibでのXFlushに相当する関数はGtk+だと何でしょうか?
0143Ruby最強!!!!!!!!!!11NGNG
たぶんgdk_flush()
0144142NGNG
>>143
ありがとうございます.
まさにその通りでした.
0145デフォルトの名無しさんNGNG
gtk_timeout_addだとインターバルがミリ秒単位の整数値しか取れないみたいですけど,
マイクロ秒単位で呼び出す関数ってありませんかね?
0146デフォルトの名無しさんNGNG
なんでそんなことをしたいのか分からんし「タイムアウトの関数は、
他のイベント・ソースを処理するために削除 (Destroy) される可能性があることに注意して下さい。
そのため、それらの関数は正確な時間 (タイミング) に依存しないようにして下さい。」
とある。が、GLibのGTimer使えば、あるいは。
0147デフォルトの名無しさんNGNG
>>145
usleepという手もあるけれど、Linuxだと10ms未満のソフトウェアタイマ処理は保証されていない。
マイクロ秒単位にしたいのならPCIボードでも買って来て
ハードウェアタイマによる割り込みを使用するのが吉だよ。
0148デフォルトの名無しさんNGNG
それでもユーザプロセスでやるとするときつくない?
CPUが1GHzとして、マイクロ秒の精度でしようと思ったら
1000クロックしかない。この間に、割込みが起きて実行中のユーザプロセスから
カーネルに移り、プロセスをスイッチして、今度はそのユーザプロセスに処理を
移さないといけない。
0149デフォルトの名無しさんNGNG
マルチメディアタイマーならSDLとか使うとよろし
0150デフォルトの名無しさんNGNG
GTK+とGTK--、どっちがおすすめ?
0151デフォルトの名無しさんNGNG
>>150
GTK+の方がお薦め。
GTK--はC++での開発に有利だけど、
C言語による一貫性がなくなる上、デフォルト以外に余計な物をインストール
しないといけないというデメリットがある。
そのインストールはときどき非常に面倒な依存性を持っていることがある。
0152デフォルトの名無しさんNGNG
メンバ関数ポインタをコールバックできないのは痛いな。
0153デフォルトの名無しさんNGNG
>>152
libsig++
0154デフォルトの名無しさんNGNG
もしもgtkmmのコールバックがstaticオンリーだったら…ガクブル
0155ageNGNG
glibって思ったより大きいのな。
0156デフォルトの名無しさんNGNG
イイ奴募集
http://pc5.2ch.net/test/read.cgi/prog/1099206417/l50
0157デフォルトの名無しさんNGNG
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つとも処理してくれるんですが。。

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

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




えええええええええええええええtg0お9−^34444444444444tkgv0@−dさう
0161デフォルトの名無しさんNGNG
0162デフォルトの名無しさんNGNG
英語のメーリングリストでGtkObjectの例をGTKO AとかGTKO Bとか書いてあると、
ギコに空目してしまってしかたがない。
0163デフォルトの名無しさんNGNG
>>13
0164デフォルトの名無しさんNGNG
wxFIXED_MINSIZEをいちいちアンチェックするのがめんどくさいです
0165デフォルトの名無しさんNGNG
聞こえなかったのかな




wxFIXED_MINSIZEをいちいちアンチェックするのがめんどくさいです
0166デフォルトの名無しさんNGNG
>>165
ご苦労様です
0167デフォルトの名無しさんNGNG
もしかしてもうすぐ2.6?
0168デフォルトの名無しさんNGNG
GTK+-2.6 age
0169デフォルトの名無しさんNGNG
GKeyFileやGOptionってGConfやpoptがあるのに。
なんでも自前で持とうと?
0170デフォルトの名無しさんNGNG
>>169
レイヤーが違う。
もっと言えば、例えば過去にGNOMEのライブラリに入っていたものが、今はGTK+に移動してきたり
しているように、GLib/GTK+は下位レイヤーとして必要なものをすべて持とうという思想なのだろう。
実際、GNOMEに関係のないGLib/GTK+アプリってのは山ほどある。
0171デフォルトの名無しさんNGNG
ああああああああああああああああああああああああああああああ!!!!!
VC++でGlibがコンパイルできーーーーーーーーーーーーーーん!!!!!!
0172デフォルトの名無しさんNGNG
Windowsで使うのはめんどくさいよね。
0173デフォルトの名無しさんNGNG
わけわからん。コロスゾ!nmake -f makefile.mscで全部まるっと
コンパイル通せよヴォケが!!
0174デフォルトの名無しさんNGNG
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.
0175デフォルトの名無しさんNGNG
何が上手くいかないかも書かない独り言は
0176デフォルトの名無しさんNGNG
それはスマンカッタ。
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' で異なっています。

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

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

次はGtkだ〜・・・
0179デフォルトの名無しさんNGNG
Gtkの依存してるpangoの依存してるfontconfigがコンパイルできないー
VC++用のMakefileが無いー
0180デフォルトの名無しさんNGNG
これは先人からの忠告だ。
VC++で全体をビルドするのはやめておけ。
限りなく不可能に近い。
MinGWでビルドするほうがいい。
0181デフォルトの名無しさんNGNG
関係ないけど、VC++のコンパイラはときどき挙動が変だから気に入らない。
0182デフォルトの名無しさんNGNG
先人の忠告を受け入れてfreetypeとfontconfigはバイナリを持ってきてpangoを
コンパイルした!次はatkだ〜・・・の前にGtkのコンパイルをちょっと進めたら
gtk/stock-iconsにvc用のmakefileが無いからgtkのmakeが止まる〜・・・
後回しにしてatkを先にしようと思ったらatkもvc用のmakefile無い〜・・・
0183デフォルトの名無しさんNGNG
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



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

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

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

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

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

Wiindowsで言うとこんなとこか?
0194デフォルトの名無しさん05/02/09 16:22:54
>>193
それに応えて「WinFXにご期待ください」なのかしらん?
0195デフォルトの名無しさん05/02/09 16:29:34
tcltkは関係ないw
0196デフォルトの名無しさん05/02/13 14:53:29
glibはなんでexpat使わないのか
0197デフォルトの名無しさん05/02/17 23:59:29
panedで境界が動かされた事を通知するシグナル名を教えて頂けないでしょうか。
0198デフォルトの名無しさん05/02/18 00:28:44
http://developer.gnome.org/doc/API/2.0/gtk/GtkPaned.html#id3633892
0199デフォルトの名無しさん05/02/18 06:24:47
>>198
見ましたが関数の型だけで何が起こったときのシグナルかと言う情報が不足しているように感じます。
0200デフォルトの名無しさん05/02/18 23:04:18
レベル低下が甚だしいね。
0201デフォルトの名無しさん05/02/18 23:28:18
>>200
一行知った風な事を書く厨房とかが出だしたら末期だ。
かなしきかな。
0202GtkPaned notify::positionでぐぐれ。05/02/19 00:38:52
↑なにこの白痴w わざわざ二行に分けなくていいから。

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

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

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

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

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

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

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

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

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

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

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

ありがとう。
こういうテーマを自分で作りたいんだけど、どっかに資料ないですかね?
かっこいいテーマを見つけてくるのもそれはいいんだけど、自分で作れれば無敵でしょ?
02402382005/04/02(土) 23:53:28
>>239
うーん、自分はテーマ作るにあたっての資料とか、ツールとかは知らないです。スマソ。
けど基本的にgtkrcが分かればそれだけな気もするし、あとは既存のテーマの真似をすれば十分オリジナルも作れるんじゃないでしょうか。
カッコイイのできたらもちろん公開キボンヌ。っす。
0241デフォルトの名無しさん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() 関数の中で使いたかったのですが・・・。
0242デフォルトの名無しさん2005/04/06(水) 16:55:49
>>241
gtk_main() の前でないとダメなん?
widget->window がなくて困った、とかなら realize イベントの
コールバック内とかでもいいと思うけど。
0243デフォルトの名無しさん2005/04/06(水) 20:24:40
>>242
イベントドリブンに入る前に自前のイニシャライズ処理(drawable に
表示する絵を用意する)を入れたかったのですが、イベントハンドラの
中で初期化する様に変更しました。

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

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

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

ついでに、その2つの関数はもう古いような記憶が…。
0249デフォルトの名無しさん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
0250デフォルトの名無しさん2005/04/19(火) 08:16:08
http://www.gnome.gr.jp/ が Bad Gateway で繋がらないんだけど、
うちだけかな。
0251デフォルトの名無しさん2005/04/19(火) 17:44:14
>>250
ノシ
向こう側で設定ミスってるのかも名。
02522492005/04/20(水) 01:47:28
Pango が思ったより楽チンだったので Pango 使ってみます。
Gtk より下のレイヤーはドキュメントが少なくて辛い。
02532442005/04/20(水) 10:52:26
Linux+GTKでプログラミングしているんですが、フォントサイズ(例えばテキストウィジェットの中の)を変更する関数ってあるのでしょうか?
0254デフォルトの名無しさん2005/04/20(水) 21:42:06
Web 直ったみたいだね。ヨカッタヨカッタ.

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

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

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

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

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

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

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

該当ドキュメントが掲載されていそうなところへのポインタでもいいので、
ご存知の方いらっしゃいましたらよろしくご教授お願いします。
0266デフォルトの名無しさん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 がなくなってるかなあ。
0267デフォルトの名無しさん2005/10/08(土) 17:20:10
>>265
rcのstyleで
base[SELECTED]=colorname
は?
02682662005/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 入れたことあるんだから気づけよ俺……。
0269デフォルトの名無しさん2005/10/10(月) 03:57:59
gtk+-2.8だめだ……
cairoのせいで埋め込みビットマップフォント表示してくれない……
vine seed の埋め込みビットマップパッチあてたら表示はするけど崩れる……
gtk2をつかうアプリケーション起動するとxqbiffが落ちる……
gtk+-2.8だめだ……
■ このスレッドは過去ログ倉庫に格納されています