GTK+プログラミング
■ このスレッドは過去ログ倉庫に格納されています
0001login:Penguin
2007/09/05(水) 13:58:46ID:2SORZMjm-前スレ-
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/
0583login:Penguin
2011/02/13(日) 17:17:13ID:CYJdXAks0584login:Penguin
2011/02/13(日) 17:45:42ID:q0+Fj2Ij説明が少なくてすいません。
X86 Linux PCを使って業務用のシステムを作っています。
PCを起動して、OSが立ち上がったあと、自動で以下の処理を行います。
1)USBメモリが接続されているチェックします。
2)もしUSBメモリがマウントできたらファイル(数百Mバイト)をHDDにコピーします。
3)ファイルコピー完了後に、メインの処理を行います。
2)のファイルコピーに時間がかかるため、その間に「しばらくお待ちください」という静止画を
フルスクリーンで表示したいんです。1)〜3)の処理はシェルスクリプトで行い、
#!/bin/bash
(省略)
|
静止画を表示
cp aaa.bin /temp // ファイルコピー
静止画を消す
|
メインの処理
という感じでやりたいと考えています。
シェルスクリプトでやるのが最適かどうかわからないのですが・・・。
0585login:Penguin
2011/02/13(日) 17:56:06ID:XiVInOjw0586login:Penguin
2011/02/13(日) 18:14:42ID:ibuao8Zpではダメなん?
0587login:Penguin
2011/02/13(日) 18:30:28ID:YWgLFWCD商売でオプソ使うのは止めたほうがいいよ
嫌味で言ってるんじゃなくて、法務的な問題が多すぎてメリット無いって
ソースコード開示しろって言われたとき、開示できる仕様なの?
客先とトラブルになっちゃうよ?
止めた方がいいと思うけど
0588583
2011/02/13(日) 20:56:45ID:L9k+0hAb内容了解。俺だったらこんな感じに実装するけどこでどうかな?
どうしても一回プロセス自体終了する必要があるのであれば
もう少し手を入れないといけないと思う。
スクリプト内のhelloworld.pyは以下のもの
http://www.pygtk.org/pygtk2tutorial/examples/helloworld.py
#!/bin/bash
${PWD}/helloworld.py &
GTKPID=$!
sleep 10
kill ${GTKPID}
exit
0589login:Penguin
2011/02/13(日) 23:32:30ID:q0+Fj2Ijありがとうございます。
なるほど、そのようなやり方があるのですね。
非同期のプロセスで画像を表示し、
ファイルコピーが完了したら
プロセスをkillするということで理解しました。
私の思っていることが出来そうです。
たいへん勉強になりました。
>>587
同僚の仕事を楽にするために、手伝っています。
今回の件のソースは公開しても全然問題ないのですが、
今後は気をつけようと思います。
以上、ありがとうございました。
0590login:Penguin
2011/02/15(火) 00:33:40ID:yHAzvg6R2年ぶりのメジャーリリース、「GTK+ 3.0」が登場
2年ぶりって…
訳も適当だし、なんか寂しいリリースだな
0591login:Penguin
2011/02/19(土) 17:26:47ID:7Kan848G行いたいことは、
TreeViewに(ID,TEXT)というカラムありデータが羅列しています。
そのIDを指定してTEXTの内容を変更したいのですが、どのようにすればいいでしょうか?
どうかご教授頂ければと思います。
0592login:Penguin
2011/02/20(日) 22:47:31.70ID:9P4zTjVT簡単に言うと、TreeStoreのIterを対象のところ(ID)まで移動して、
tree_store_set()を行う。
http://library.gnome.org/devel/gtk/unstable/TreeWidget.html#id895991
0593login:Penguin
2011/02/20(日) 22:55:37.60ID:i278BMok0594login:Penguin
2011/02/20(日) 22:59:25.78ID:AtCPi59r0595login:Penguin
2011/02/28(月) 09:54:32.03ID:TADfIJ7a0596login:Penguin
2011/03/06(日) 02:46:29.22ID:fhS84NZTLinuxでGTK+を使ってアプリを作成しています。
Windowsで言うグローバルホットキーを実装したくて色々調べたのですが該当するページが見つからず途方にくれています。
GTK+にはRegisterHotKey()に当たる関数はないのでしょうか?
また、Linuxでグローバルホットを実装する方法があればご提示お願い致します。
0597login:Penguin
2011/03/06(日) 04:33:17.56ID:tsVY1dm+gtk hotkey でググったら、一発ですが探してないの?
0598596
2011/03/07(月) 03:13:28.76ID:PnCjIDjhすいません、ググり方が少し違ったようで・・・
「Linux プログラミング ホットキー」などで探していました。
ご指摘頂いたワードで検索した結果なんとか行けそうです。
本当にありがとうございました。
0599login:Penguin
2011/03/08(火) 11:03:24.04ID:d1JzSVeD適切なキーワードを選択できてはじめて探し当てられる。
0600login:Penguin
2011/03/08(火) 12:59:49.88ID:a0IyugMvあるある。だいぶ知恵ついてくると簡単に検索できるようになるけど、初めての分野だと一向にヒットしない
よく初心者スレで「検索しても見つかりませんでした」「○○で検索すればすぐみつかるだろksg」
みたいなやりとり見るけど、正直初心者にはムリだよな…と思ったりもする。放置するけど
今度またググル先生がアルゴリズム変えるらしいけど、こういった点では改善がみられるかなあ…
0601login:Penguin
2011/03/08(火) 19:26:19.05ID:tKbotCXi右側に0ナンバーが多いものはなんか怖いから、まだ試してない。
0602login:Penguin
2011/03/13(日) 21:58:33.68ID:Vqq2M10I0603login:Penguin
2011/03/13(日) 23:48:32.57ID:u6WvClB5http://hibari.2ch.net/test/read.cgi/linux/1246771919/
0604login:Penguin
2011/03/17(木) 17:02:45.22ID:+oBUwr3Ngtk.TextViewの背景色を変更するにはどのようにすればよいでしょうか?
0605604
2011/03/18(金) 15:07:37.88ID:hYpmyKaN0606login:Penguin
2011/04/29(金) 21:13:49.14ID:8r02bpAR時に以下のエラーが出るようになってしまいました。同じようなエラーを経験した方は居ませんでしょ
うか?
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.
0607606
2011/04/30(土) 22:26:19.43ID:VyP2E163誤
Gtk::Main kit( argv, argc );
Gtk::GL::init( argv, argc );
正
Gtk::Main kit( argc, argv );
Gtk::GL::init( argc, argv );
0608login:Penguin
2011/05/02(月) 11:45:41.61ID:izX8cIkn0609login:Penguin
2011/05/03(火) 00:46:43.55ID:WBrmWZ0j試してみたら普通にコンパイルエラーになる。
それと関係無いけど、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(); });
0610login:Penguin
2011/05/03(火) 18:07:59.69ID:6MgTkiYnコンパイルが通る方は適当に作った変数を食わしてたんだけど何故か逆にしてもコンパイルが通る
今は書き直して本物のargc,argvを入れています。
valaか〜・・・ドキュメント多い?
0611login:Penguin
2011/05/07(土) 08:45:48.59ID:dGkArH/V英語だったら本家サイトのドキュメントで困る事はないよ。
最終的にC言語にトランスレートされるんだけど、そのソースを見るのが中々楽しいw
0612login:Penguin
2011/05/11(水) 17:31:43.03ID:ZkP/smDqどうすればいいでしょうか?
0613login:Penguin
2011/05/11(水) 21:14:23.65ID:lC/0GEj90614login:Penguin
2011/05/11(水) 21:50:59.78ID:TI/wHkRVとりあえずALSA APIとか調べてみては?
0615login:Penguin
2011/05/14(土) 12:57:13.28ID:z2Mrc21jwindowsでgtk+の開発環境を整えたいのですが参考になるサイトありませんか?
0616login:Penguin
2011/05/14(土) 13:14:39.16ID:5Yfumgbf0617login:Penguin
2011/05/14(土) 16:45:40.19ID:lAxQi/enプログラム板にスレがあるよ
そっちで聞けば回答がもらえるかもしれない
こっちの質問は撤回して向こうへ行くといい
0618login:Penguin
2011/05/14(土) 18:54:06.07ID:ndPfVk8hhttp://masaya.w32.jp/?p=463
http://masaya.w32.jp/?p=470
http://masaya.w32.jp/?p=476
http://masaya.w32.jp/?p=482
0619login:Penguin
2011/05/14(土) 19:17:02.73ID:z2Mrc21jありがとうございます
でも、やっぱり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をつかってるので・・・
0620login:Penguin
2011/05/14(土) 19:25:22.37ID:Obe5d9n3どうすればいいのでしょうかって、どうすればいいのか自分で貼り付けてるじゃん。
Perhaps you should add the directory containing `gtk+2.0.pc`
to the PKG_CONFIG_PATH environment variable
あと質問のつもりなら、どのソースをどんな方法でコンパイルしたかくらいは書くべき。
0621login:Penguin
2011/05/14(土) 20:04:20.32ID:z2Mrc21jすいません。以後気をつけます
それとパスの通し方がわかりません・・・linuxはあまり触ったことがないので
0622login:Penguin
2011/05/14(土) 20:55:58.32ID:Jq7jXtDN世の中なめてんのか?
0623login:Penguin
2011/05/14(土) 21:05:27.10ID:z2Mrc21j0624login:Penguin
2011/05/14(土) 21:20:41.50ID:Jq7jXtDN世の中なんめてんのか?
0625login:Penguin
2011/05/14(土) 21:28:54.65ID:agWK3k8h出来るだけ日本語の情報があるとうれしいw
0626login:Penguin
2011/05/14(土) 21:35:13.28ID:z2Mrc21j親のすねかじってるお前よりマシだよハゲ
0627login:Penguin
2011/05/14(土) 21:45:25.94ID:Jq7jXtDN/": : : : : : : : \
/-─-,,,_: : : : : : : : :\
/ '''-,,,: : : : : : : :i
/、 /: : : : : : : : i ________
r-、 ,,,,,,,,,,、 /: : : : : : : : : :i /
L_, , 、 \: : : : : : : : :i / Yahoo!翻訳したら
/●) (●> |: :__,=-、: / < 負けかなと思ってる
l イ '- |:/ tbノノ \
l ,`-=-'\ `l ι';/ \ 英語がだめな24・男性
ヽトェ-ェェ-:) -r'  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
ヾ=-' / /
____ヽ::::... / ::::|
/ ̄ ::::::::::::::l `──'''' :::|
0628login:Penguin
2011/05/14(土) 22:10:07.52ID:TqodLHpvだったら分かってるだろうwinでやった方がいいんじゃないの?
winはもっと分からないっていうなら仕方ないけど。
0629login:Penguin
2011/05/14(土) 23:47:30.17ID:agWK3k8h原文でわけが分からない方がましなくらいにね・・・
それとは別に ID:z2Mrc21j はもっと謙虚になるべき
下地が出来ていないし質問する場所が悪いし何を聞いたらいいか分かっていない気がする
何でパスを通したいのか分からないけど細かい質問はgoogle先生で検索してみるといいかも
0630login:Penguin
2011/05/14(土) 23:48:21.53ID:wLtMCrHNパスの通し方はGTKと全く関係ないLinuxの基礎の基礎なので、スレ違いです。
0631login:Penguin
2011/05/15(日) 13:51:59.78ID:cCRv4Dbraptitude install libgtk2.0-dev
gcc `pkg-config --cflags gtk+-2.0 --libs gtk+-2.0` image-viewer.c
0632login:Penguin
2011/05/15(日) 20:44:42.05ID:CFcmlqIg同レベルとみなした方が良さそうではあるがな
0633login:Penguin
2011/05/15(日) 20:59:22.40ID:WCLbHSMZグダグダになるぞw
0634login:Penguin
2011/05/15(日) 21:13:58.77ID:CFcmlqIg0635login:Penguin
2011/05/15(日) 21:17:53.35ID:UHIJLo/l0636login:Penguin
2011/05/15(日) 21:22:41.40ID:3m8/J1/j怒るでしかしwwww
0637login:Penguin
2011/05/15(日) 23:53:02.86ID:IS7vzHtp1. パスの通し方でからんでるアホ
2. スレ違いのグダグダにからんでるアホ
3. >>637 このレス
同レベル。
0638login:Penguin
2011/05/16(月) 06:50:27.01ID:HgEV0miS悩まされずにすむんだけどなあ
0639login:Penguin
2011/05/17(火) 07:03:27.38ID:17NbAwxjこれは、GTK+アプリがサーバーで動いていてクライアントでは<canvas>で
表示しているだけって事かな。
HTML5対応ツールキットとか沢山出てきそうだけど、やっぱりGTK+は最初から
完成度高いものが使えるから、かなりのアドバンテージになるはず。
インストールしなくてもWindows上でGTK+アプリが使える訳だから最高だな。
0640login:Penguin
2011/05/18(水) 01:14:48.22ID:zz1Ry4tA0641login:Penguin
2011/05/24(火) 08:34:07.83ID:KqvnTjTMGTKのDrawingAreaに表示するにはどうしたらいいんでしょうか?
直接DrawingAreaのGdkwindowにExposeイベント毎に描画するようにすると当然破綻します。
GTK+2だとCairoのSurfaceに描画してそれをPixbufにするというのもできない感じなので困ってます。
0642login:Penguin
2011/05/24(火) 17:28:30.93ID:ob7Yh9v7むしろGTK+3でGdkPixmapがなくなって、オフスクリーンなpixmapを
どうやって持つのか知りたい。
オフスクリーンなGdkWindowというのがあるらしいから
それを作ってpixmapとして使えということなのだろうか。
0643641
2011/05/24(火) 17:47:47.35ID:SHDVYoHhありがとうございます。
使ってる言語のバインディングが+2用なので仕方なく+2を使ってますが、今から使うアプリに
GdkPixmapは使いたくないので、他に手段ないでしょうか?
+2でも、CairoのSurfaceをGdkWindowにコピー?できるのが理想なんですが。
ちなみに、+3では
http://developer.gnome.org/gtk3/stable/ch25s02.html#id1407324
によればCairoのSurface使えってことだと思います。
0644login:Penguin
2011/05/25(水) 22:49:33.40ID:ypXSp7WEhttp://zetcode.com/tutorials/cairographicstutorial/cairoimages/
の「Blind down effect」でできるようですよ
簡単に要約すると
関数cairo_image_surface_createでオフスクリーンなsurfaceを作って、そこに落書きし、
eexposeイベント内で関数cairo_set_source_surfaceを呼び出して落書き結果をコピーするという方法だそうです
0645login:Penguin
2011/05/26(木) 01:09:20.52ID:/us7JkTi0647login:Penguin
2011/05/29(日) 20:26:57.86ID:zJJLH/V3gtk_table_attach()を変更の度に呼んでも問題ないですか?
それともパティングを手軽に変更できる手段って他にあるでしょうか。
0648login:Penguin
2011/05/31(火) 20:26:42.71ID:Bc3stUR8GtkAlignmentでどうですか?
例えば、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 );
で調節します。
0649648
2011/05/31(火) 20:30:44.34ID:Bc3stUR8参考にしたURLは
http://www.gtkforums.com/viewtopic.php?t=3220
です。
0650login:Penguin
2011/06/02(木) 12:20:53.31ID:9ZkW8466ありがとうございます
GtkAlignmentでもパディング変更できましたが
GtkTableのchildrenの中の該当ウィジェットを格納した
GtkTableChildのx/ypaddingを変更することでもできるようです
0651login:Penguin
2011/06/03(金) 01:41:05.64ID:UsW+bpf/0652login:Penguin
2011/06/04(土) 06:32:58.20ID:DoiP0avE0653648
2011/06/04(土) 17:42:05.97ID:lYXnt5Pqお役に立てずにすみません。GtkTableChildを使った方がスマートですね。
ところで、Gtk 2.0のリファレンスにGtkTableChildクラスの説明がみつからないのですが
どこにあるか教えていただけませんか?
Gtk 1.0のほうは見つけたのですが、Gtk 2.0の方では見つかりません
0654login:Penguin
2011/06/05(日) 12:08:13.55ID:2//sPV3Wもしかして直接触っちゃだめなのかもと思ったけど
childrenにテーブルの中身がって書いてるしヘッダみろってことなのかも
ところで画面解像度の変更やテーマの変更の感知はどのイベントを
受け取ればいいのか教えてください
0655648
2011/06/06(月) 22:48:57.79ID:Rnm0L+uO>>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
0656login:Penguin
2011/06/06(月) 23:39:42.74ID:X0ciCI4sありがとうございます
テーマの方はこんな感じでできそうですね
ちょっと試してみます
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);
0657login:Penguin
2011/06/09(木) 00:26:33.80ID:z+T6y5Hbラブハンドルになるスクロールバーとならないスクロールバーがあるんだけど違いはなんなの?
0658login:Penguin
2011/06/10(金) 23:26:43.28ID:PqNxIzez私のほうでも試して見ましたが、
それでテーマ変更イベントの検出はできるようですね。
しかし、notify::styleイベントがgtkリファレンスに見つからないw
何のイベントなんだろう?
>>657
ラブハンドルになるアプリ名とならないアプリ名を書けば、
誰かが調べてくれるかも?
0660login:Penguin
2011/06/12(日) 17:46:23.37ID:Nl9cfmmHいいえ、違います。
0661login:Penguin
2011/06/22(水) 01:11:00.53ID:c+3U0RiB0662login:Penguin
2011/06/22(水) 01:11:44.45ID:c+3U0RiB0663login:Penguin
2011/06/28(火) 00:26:26.50ID:eerWK6Uv↑これ有名なHTML5のデモだけど、
ttp://blogs.gnome.org/alexl/2011/04/18/broadway-update-3/
GTK+3.2がリリースされれば、↑こんな感じに同じ事が出来るようにのか?
wktkが止まらない!
0664login:Penguin
2011/07/01(金) 01:05:56.23ID:GKt7GreKFirefoxに見捨てられ更新もほとんど無い
0665login:Penguin
2011/07/01(金) 01:22:39.19ID:qaXNzYOTgitのログ見たけど更新しまくってね?リリース見ても5月中にも
pycairoとかcairommとかバインディング関係が更新あるしcairo自体は既に成熟期だろ
それとIDが惜しい
0666login:Penguin
2011/07/03(日) 08:27:55.42ID:xZFICtED↑ここ見て少なく感じた。半分近くはコードでないコミットだし。
0667login:Penguin
2011/08/01(月) 00:38:35.73ID:rgARQ4qL0668login:Penguin
2011/08/02(火) 00:30:46.57ID:px2Xwp7sGdk.X11Screen.lookup_visual () とか使えば、自分で XCreateWindow () する必要とかなかった。
0669login:Penguin
2011/08/22(月) 09:44:31.31ID:56fggY27http://up3.viploader.net/pc/src/vlpc008412.png
デフォだと↑みたいに画面の高さいっぱい一杯までスクロールバーがついたポップアップが表示されてしまいます
0670login:Penguin
2011/08/22(月) 12:32:55.24ID:GUjzssRWどうしても欲しければ自力でGtkEntryCompletion相当のコードを書くことになるのかなぁ
0671login:Penguin
2011/08/23(火) 10:55:05.34ID:fF4RpR06_GtkEntryCompletionPrivate構造体の定義がわからないので諦めました
0672login:Penguin
2011/08/24(水) 18:38:06.52ID:CLJ7sudjでもどうしても複数のデータを渡したい時ってどうするんですか?
例えば,main関数内でエントリーが3つとボタンがあって,
ボタンを押したら3つのエントリーに入力されている文字列をg_printで出力する場合とか
初歩的な質問かもしれないけど,お願いします
0673login:Penguin
2011/08/24(水) 18:57:38.20ID:tAkTiKbP構造体とか使って渡したいデータを1変数にまとめて、
コールバック関数にはその構造体のポインタ渡すのはどうかな
http://pastebin.com/UXyRbuJf
0674login:Penguin
2011/08/24(水) 19:04:11.50ID:CLJ7sudjありがとうございます
やっぱりそれしか無いですか...
なんで可変じゃなくてわざわざ一個だけなんだろうなあ
0675login:Penguin
2011/08/24(水) 19:10:25.09ID:tAkTiKbP一般的に複数引数渡すよりポインタ1個渡す方が効率的、と考えられてるんじゃないかな
普通は渡したいデータの型も文字列だけじゃないだろうし、Cだと型が予測できない可変引数を処理するのは面倒だと思う
0676login:Penguin
2011/08/24(水) 19:20:10.95ID:CLJ7sudj調べてみると可変引数って色々問題あるんですね,知りませんでした
ラッパーって言葉も今知りました
勉強になります
0677login:Penguin
2011/08/24(水) 19:40:28.68ID:fAbet21j・その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)でとれる名前を確認しながら扱う
三通り思いつきました、どうでしょうか?
0678login:Penguin
2011/08/25(木) 00:14:37.53ID:IvAnECIomain(){
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箇所がエラーになってしまいます。
だれか解決してください。
0679login:Penguin
2011/08/25(木) 07:33:21.51ID:3JebkG67それぞれ、set_window, get_window みたいなアクセサ経由に変更すればOK
0680login:Penguin
2011/08/25(木) 08:20:25.79ID:Yioj7fNN「GTK+3において GdkDrawable,GdkPixmap,GdkImage は削除された。代わりに cairo_surface_t,GdkPixbuf を使え」
とあります。承知の上での質問でしたらすいません
http://developer.gnome.org/gtk3/3.1/ch25s02.html
0681login:Penguin
2011/08/25(木) 15:58:01.07ID:67oz2wujGHashTableを使うのが一番楽そうですね
参考になりました,ありがとうございました
0682login:Penguin
2011/08/26(金) 09:59:15.55ID:lIEWgrKL0683login:Penguin
2011/08/26(金) 18:45:59.14ID:miWeYAjdどうやらgtk+3は描画の高レベル部分をcairoに置き換えたがってるようなので、
素直にgdkによる描画をcairoで書きなおすことにします。
■ このスレッドは過去ログ倉庫に格納されています