[表示 : 全て 最新50 1-99 101- 201- 301- 401- 2chのread.cgiへ]
Update time : 05/09 20:12 / Filesize : 127 KB / Number-of Response : 447
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

GTK+プログラミング



1 名前:login:Penguin [2007/09/05(水) 13:58:46 ID:2SORZMjm]
GUIツールキットであるGTK+とその周辺技術についてのスレッド

-前スレ-
pc11.2ch.net/test/read.cgi/linux/995808691/

-関連サイト-

本家
www.gtk.org/
APIレファレンス
library.gnome.org/devel/gtk/stable/
gtkmm(C++ラッパー)
www.gtkmm.org/
glade
glade.gnome.org/
libglade
www.jamesh.id.au/software/libglade/

302 名前:login:Penguin [2009/11/01(日) 17:23:59 ID:qpVzDXQL]
GUIツールキットを比較しつつ、どれがいいか検討しています。
今の第一候補はGTK+ですが、実際に使っている人の声を聞きたいです。
他の候補はQt、wxWidgetsで、言語はC++の予定です。

GTK+
 ・GnomeやXfceで使われているので、ユーザが多そう
 ・ライセンスはLGPL
 ・多くの言語向けのバインディングがあるが、CではなくC++だと少し注意が必要(?)
 ・各OSのネイティブなルック&フィールではないが、テーマによっては近い外観で描画できる

Qt
 ・KDEで使われている
 ・Nokiaがやっていて安心感がある
 ・LGPL、GPL、商用版のQPLは制限が非常に緩い
 ・おしゃれな外観(?)

wxWidgets
 ・GUIの他に多くの機能のラッパが存在して便利
 ・ネイティブなルック&フィール
 ・IDE、RADツールが豊富
 ・日本語の扱いにやや難あり(?)

Ultimate++というのも気になりますが、マイナーだし、日本語が使えない問題もあるようです。

これらは自分で集めた情報なので間違ってるかもしれません。
他にメリットやデメリットがあればどうぞ教えてください。
よろしくお願いします!

303 名前:login:Penguin mailto:sage [2009/11/01(日) 21:17:41 ID:lntj8SS+]
C++ならQt

304 名前:login:Penguin mailto:sage [2009/11/01(日) 22:13:27 ID:qpVzDXQL]
>>303
やっぱりGTK+はC++に向いてないということですね。
情報ありがとうございました。

他にも情報があれば皆さんよろしくお願いします。

305 名前:login:Penguin mailto:sage [2009/11/01(日) 22:14:04 ID:TdugBe1j]
つGLUT


306 名前:login:Penguin mailto:sage [2009/11/01(日) 23:32:48 ID:o2Fus8Wv]
>>304
gtkmmいいよ。

307 名前:login:Penguin mailto:sage [2009/11/02(月) 00:05:28 ID:F2TUeYlu]
>>305
GLUTを調べて見ましたが、OpenGLのやつなんですね。
3Dにはあまり興味が無いですが、今後必要になったとき使ってみます。
情報ありがとうございました。

>>306
GTK+はC++との親和性が少し低いけど、gtkmmはC++用で問題ないということですね。
試してみます。
ありがとうございました!

308 名前:login:Penguin mailto:sage [2009/11/03(火) 01:21:46 ID:Vebc7itB]
rubyでgtkプログラムをしたいんですけど、何かいい開発環境はないですか?
gladeとかでみためは作って変換できるのですが、中で実行するシグナル(っていうんですかね)がどういう感じで使えるかというのがわからないので
調べ調べになってしまいます。通常使ってるのはemacsとnetbeansです。これに似た、もしくはその上で動かせるものはありませんか?
補完とかできたらうれしいのですが。

309 名前:login:Penguin mailto:sage [2009/11/03(火) 19:55:27 ID:0PVkcWZ9]
逆に「gladeとかでみためは作って変換できる」の部分を
詳しく教えてほしい。

310 名前:login:Penguin mailto:sage [2009/11/03(火) 20:05:58 ID:DNzdCjrE]
gtk-builder-convertのことかな?



311 名前:login:Penguin mailto:sage [2009/11/03(火) 22:30:31 ID:1H0HUjWH]
ruby-glade-create-template とかあったよな.

312 名前:login:Penguin mailto:sage [2009/11/04(水) 08:03:24 ID:03fE0NL7]
クラスライブラリのリファレンス(英語)なら公式サイトでrbbrっていうサンプルアプリとして
置いてあるけど、そういうことじゃないのかな?

313 名前:308 mailto:sage [2009/11/05(木) 02:27:28 ID:Cf0Et12U]
>>309-311
311さんが言ってるみたいにruby-glade-create-templateで作ったgladeファイルを.rbに変換して
オブジェクトは作ったからメソッド書いて自分の思うような動きを作ってちょうだいな。みたいなところまではできます。
しかし、rbファイルを編集するときにrequire 'gtk2'をよんでいるのにemacsでもnetbeansでも補完してくれませんでした。

>>312
rbbrは使ってるOSにパッケージがあったのでそれを入れてみましたが。リファレンスを引けるようになりました!
リファレンスが引けると言うことは補完もできるのでは?と今悩んでいる状態です。

314 名前:309 mailto:sage [2009/11/06(金) 12:34:31 ID:pFNFtZEf]
>>310
>>311
>>313
サンクスです。ググったら
Ruby/Gtk2のチュートリアルに書いてあるね
規制でタイミング逸して返事書かなくてすまん

315 名前:308 mailto:sage [2009/11/06(金) 17:32:52 ID:1VLamOE6]
>>309さんはどんな感じでコードかいてますか?
リファレンス見ながらかいている感じですか?

316 名前:login:Penguin mailto:sage [2009/11/07(土) 07:20:09 ID:PbDi/n2M]
>>302
亀レスながら俺も検討中なので...
GTK+はこれからやってみるので置いといて、

Qtはさすがに良くできてるけど、簡単なことをやろうとしても多くのクラスを
使わなければならず、また抽象的な概念みたいなもの(データモデルとか
データアイテム)とか出てきて、簡単に「サクッ」と作る感じではないので、
習得に時間が掛かりそう。「エキスパートのための高級品」のイメージ。
ウィジットの種類も豊富だし、一つのウィジットが多くの機能を持っているので
困ることはなさそう。

wxWidgwtsは確かにツールが豊富だけど、決定版と言えるものはイマイチ
ない気がする。wxDev-C++が導入簡単だけどデバッガーが環境や条件に
よって動作しないトラブル発生中。もう随分前に発覚したのになかなか
直らない。Delphiで書かれていて、近くC++に移植が予定されているようだ。
使えるのはCode::Blocksかな?

wxWidgwtsはQtよりは理解しやすいと思う。日本語の扱いは別に問題ないよ。
ウィジットの種類は豊富だけど、肝心なものがなかったり...
俺はスピンボタンつきの数値専用エディットボックスで、実数を
扱いたかったんだが、これが標準ではない。3rd Party製があるけど、
IDE/RADで、非標準のウィジットを簡単に取り込める仕組みを
持ったものがないので、結局手で書くしかなくて面倒。

Ultimate++は使い勝手が良くない。というかユーザーインターフェースの
設計が下手で、直感的に使えない。それと日本語の扱いに問題がある。
Windowsの話だけど、エンコーディングにCP932(SJIS)が選べないので、
utf-8にするしかない。それでもC++版Hello World!を「こんにちは 世界!」
にして実行したら文字化けしたので、カッとしてアンインストールして
しまった。

以上、ご参考まで。

317 名前:login:Penguin mailto:sage [2009/11/07(土) 07:40:28 ID:h9ilEYN9]
Lazarus とか。 

318 名前:login:Penguin mailto:sage [2009/11/07(土) 07:53:25 ID:wJdSUuBx]
gtkmmを薦めてるのがいるが真に受けんように
C++でまともに動いたら、scim-bridgeみたいなモノを作る羽目にはならん

319 名前:login:Penguin [2009/11/07(土) 11:52:06 ID:CPjNRklA]
面白いのはわかるが、今更そんなんやったって・・・
激しくつまらんけど、これからはAIRですよ

320 名前:login:Penguin mailto:sage [2009/11/07(土) 13:30:53 ID:pZqg2eyF]
いや、これからはJavaですよ
作ってて面白いしね




321 名前:309 mailto:sage [2009/11/07(土) 15:04:13 ID:pqmmO2Ng]
>>315
そうだね。
オンラインリファレンスを地味に検索しながら
emacsのruby-modeで書いてるよ。
methodsとかのメソッドで確認したりするぐらい。
emacsで構文解析してメンバ関数だのメソッドを補完する環境って無いんじゃないかな。
無作為に辞書から補完するのはあるかもしれんけど。
netbeansはよく知らない。
Ubuntuだと「追加と削除」からリRuby Browserというリファレンスビュワーが落とせるよね。
これはRuby/Gtk2のクラスも見られたと思う。

322 名前:login:Penguin mailto:sage [2009/11/07(土) 19:56:24 ID:nXIVDau4]
型がなんでgintやgcharなの?
intやcharではダメなわけ?

C言語とのこういうちょっとした違いは
他にもいろいろあるの?


323 名前:login:Penguin mailto:sage [2009/11/07(土) 20:43:43 ID:P9pTNgo8]
> 型がなんでgintやgcharなの?
移植しやすくする為の措置じゃなかったっけか

324 名前:login:Penguin mailto:sage [2009/11/07(土) 21:04:17 ID:nXIVDau4]
「g」が付いてるほうが移植性が高いのかねぇ。

みんなはそういうのをどうやって覚えたの?
解説本とかあまり売ってないみたいだけど…。

325 名前:login:Penguin mailto:sage [2009/11/07(土) 21:25:19 ID:NL8bJnRF]
>>nXIVDau4
たとえばlongが64bitの環境でも、glong的に32bitであってほしい場合にlongの代わりにintやint32をtypedefするとかな。
データ構造の隠ぺいとかはWeb上の先人の残した情報だったり、技術書立ち読みだったり、Win32やNSPRとか同じことやってる実例を見たりとかで知ったよ。

326 名前:login:Penguin mailto:sage [2009/11/07(土) 22:58:20 ID:FPX1oLqZ]
>>324
C言語はintとかの定義に幅があるから
コンパイラが違えばintのサイズも異なったりするので
厳密に定義した独自のintを用意するわけですよ

先月出た本はどうでしょう
www.amazon.co.jp/dp/4274067769

327 名前:login:Penguin mailto:sage [2009/11/07(土) 23:54:07 ID:Iq2jGS9i]
gint32、とかにした方が判りやすいのに

328 名前:login:Penguin mailto:sage [2009/11/08(日) 03:02:52 ID:A1QtHV1W]
>>325-326
なるほど、なんとなくわかった。
ありがと。チュ!

本は今度本屋で見てみる。


329 名前:login:Penguin [2009/11/08(日) 22:19:03 ID:A1QtHV1W]
GTK+をこれからやろうと思ってますが、C++よりC言語のほうがいいんでしょうか?
昔CもC++も少しずつかじりましたが、どっちも中途半端に終わって、今は頭の中でゴッチャになってます。
GTK+を始めるこの機会にどちらかをちゃんと勉強するつもりですが、どっちがいいか迷ってます。

CよりC++のほうが言語として優れていたり、C++を覚えたほうが何か有利だったりするんですかねぇ?
gtkmmというのを使えばC++でもいけるんですよね?
何かアドバイスをもらえればうれしいです。

330 名前:login:Penguin mailto:sage [2009/11/08(日) 22:48:08 ID:iZONJSh7]
>>329
有利かどうかでいえば、一山いくらのプログラマとしても仕事に付けるかという観点ではC++/Java/PHP/VBあたりだろうな。
有利不利なんぞを気にするんなら間違ってもWindowsかWebアプリ、携帯以外見向きもしないほうがいい。GTK+なんかもってのほかだ。

マジレスするなら、C++にあまり慣れてないならCでGTK+やるのがいい。
ついでにPythonあたりも齧っとけばC+GTK+で面倒な部分もこなせるし、Linux方面のプログラムを開発するのに不自由はしないだろう。



331 名前:login:Penguin mailto:sage [2009/11/08(日) 23:24:58 ID:3wmSljPh]
>>329
Cはスーパーマクロアセンブラ、C++になって高級言語の仲間入りっつー感じかな。
ある程度規模の大きなプログラム作るんなら、絶対C++の方が有利。
Cははっきり言って時代遅れ。C++は習得しておいた方がいいよ。
組み込み系なんかだと、また話は変わってくると思うが。

GUIツールキットだって、殆どのものがC++を念頭に置いて作られてる。
Cが標準でC++ラッパーを後付けしたのはGTK+くらいなもの。
まぁ、それだけ歴史が古く、練り上げられてるとも言えると思うけど。

332 名前:login:Penguin [2009/11/09(月) 00:10:55 ID:xrkj026G]
>>330-331
どうも!
「C++に慣れてないなら」っていうのはオブジェクト指向が壁になるかもしれないってことですかねぇ。
一応JavaやPHPもちょこちょこやってるので、理解はしてます。

お二人の意見を合わせると、C++のほうがいいけど、慣れてなかったり自信がなかったりする場合は
Cにしておくのが無難ってとこですね。

もうちょっと考えてみます。
とても参考になりましたー!


333 名前:login:Penguin mailto:sage [2009/11/09(月) 00:31:21 ID:GPAwpvGp]
>>332
オブジェクト指向が壁になるからではないよ。ほぼ1からC++とGTK+(とgtkmmの固有事情)やるよりはCとGTK+のほうが楽かなとね。
一応gtkmm以外にもJavaとPHP向けのバインディングがあるから、Cでやるのが面倒なようならそれぞれJava-Gnome/PHP-GTKで調べてみるといい。

334 名前:login:Penguin mailto:sage [2009/11/09(月) 01:09:23 ID:GiNGaxO1]
gtkmmの固有事情くわしく

これから始めようと思ってるんだけど
>>132, >>318とか見ると気になる

335 名前:329 [2009/11/09(月) 01:13:18 ID:xrkj026G]
>>333
Cのほうがやっぱ楽なんですか。
といいつつC++も捨てがたいけど、>>334さんと同じくgtkmmの固有事情が気になります。

JavaやPHPのやつも存在は知ってましたが、CかC++でアプリを作れるようになりたいなぁと思ってて…。

336 名前:login:Penguin mailto:sage [2009/11/09(月) 01:49:16 ID:9bGbNsmw]
>>333, >>334

>>132, >>318の言ってることについては心当たりないが、GtkTreeIterだかのバインディングにメモリリークのバグがあるとかいうブログの記事を見たことがある。
固有事情とは言いすぎた。GObjectの仕組みに加えてC++のオブジェクトとの絡みで素のGTK+より覚えることが多くなるかなと思った故の発言だ。

>>334
C/C++ともほぼ未経験なら日本語ドキュメントや和書もある素のGTK+のほうが理解しやすいのではと思ってC+GTKを勧めたが、単純にGTK+のウイジェットを使ってウィンドウアプリケーションを作るならgtkmmのほうが楽なはずだ。
素のGTK+をCで使用する場合、頻繁に型キャストのマクロを使うし、新たなウィジェットを作成する際にはGObjectの動的型システムを素で使うことになるからその点面倒だ。
gtkmmであればその点いくらか楽ができる。だが、ほかの言語バインディングでも使えるウィジェットを作成するとなると素のGTK+の動的型システムの流儀も触れる必要があるから、C++の知識に加えてGObjectの仕組みも知る必要がでてくる。

Javaをある程度使えて、GObjectの動的型システムには触れずにウィンドウアプリケーションを作りたいということであれば改めてgtkmmのほうを

337 名前:login:Penguin mailto:sage [2009/11/09(月) 09:55:18 ID:H/aMIY+I]
わざわざPerlで扱ってる変態もいるしな


338 名前:login:Penguin mailto:sage [2009/11/09(月) 10:14:55 ID:LeSNQMah]
>>335
俺は Python でやってる。
C を使っている gtk+ プロジェクトだったら C で書く。
そんなに違いはないし、簡単。

Cだとヘッダーにいちいちプロトタイプ宣言しなければならなかったり
毎回コンパイルしなければならないのが面倒だからPython使ってる。
楽チン。

339 名前:login:Penguin mailto:sage [2009/11/09(月) 15:19:07 ID:dkYv1Xb9]
>>337
ぇー最近perlでGTK触りはじめたけど、変態じゃないやい><

340 名前:login:Penguin mailto:sage [2009/11/09(月) 15:40:43 ID:nWvFWYHF]
とにかく完成するのが目的なら自分の好きな言語でいいじゃん。おれはRubyだぜ。



341 名前:login:Penguin mailto:sage [2009/11/09(月) 18:21:40 ID:EMO5BJHN]
GTK+はバインディングが多いのがいいよね

342 名前:login:Penguin [2009/11/16(月) 16:13:58 ID:VCRzBqJE]
なんだかんだ言って、Cのコードは寿命が長いんだよね。
コストベーシスで考えると、GTK+の場合は全てCで書いた方が
いいと思う。他のメジャーなソフトはほとんどCだし、
インテグレーションもし易いよね。


343 名前:login:Penguin mailto:sage [2009/11/16(月) 17:18:31 ID:gFc8JNPu]
Cは初心者向けの本を昔読んで、当時はなんだか難しいなぁって思ったけど、
GTK+に挑戦したくてもう一度読んでみたら大して難しくなかった。

配列、関数、ポインタ、構造体の使い方の基礎がわかってたらGTK+を扱える?
この程度の知識で始めるのはなんか怖くて・・・。

344 名前:login:Penguin mailto:sage [2009/11/16(月) 17:21:51 ID:VCRzBqJE]
GTK+なら、型が決まっているから、
ほんとに基本的な知識だけで十分だと思う。
マクロやプリプロセッサもよく使われているけど、
非常にシンプルなコンセプトだし、問題ないとおもう。

345 名前:login:Penguin mailto:sage [2009/11/16(月) 20:35:58 ID:gFc8JNPu]
>>344
どうも!
今年中に始めよーっと!!

346 名前:login:Penguin mailto:sage [2009/11/16(月) 21:19:38 ID:tJXAF2DJ]
もう「今年中」とかいうセリフが聞かれる時期になったか。

347 名前:犬山ぽち丸 mailto:sage [2009/11/19(木) 00:11:09 ID:CpUTPEU6]
Perl でこんな感じのを書いてみました。
ttp://pochimaru.seesaa.net/article/132639898.html

次ページ移動ボタンをクリックする事で次ページを表示したいのですが、
このままでは期待するように動きません。
現時点の表示をクリアして次ページを表示するにはどうしたらいいのでしょうか?


348 名前:login:Penguin mailto:sage [2009/11/19(木) 05:10:52 ID:kHCd9OdN]
# perlって聞いた時点で見る気なくした

349 名前:login:Penguin mailto:sage [2009/11/20(金) 14:06:49 ID:TNyOV+9k]
DrawingAreaをAspectFrameで包むと上下左右に、
GNOMEでは1ピクセル、
Fluxboxでは2ピクセル隙間が開くんだが、なんとかならないものか

350 名前:349 mailto:sage [2009/11/20(金) 14:52:09 ID:TNyOV+9k]
set_border_width(0)でもだめだった

python-gtk2 2.16.0
python-glade2 2.16.0
gtk 2.18



351 名前:login:Penguin mailto:sage [2009/11/21(土) 12:33:26 ID:cf2l5sy0]
gtk2.18.3をubuntu9.10でやっているんですが
キーを押し続けている状態を知る事はできないんでしょうか?
今はkey-press-eventとkey-release-eventシグナルを使っているんですが
キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて
押し続けている状態を知る事ができません。

352 名前:login:Penguin mailto:sage [2009/11/21(土) 15:35:08 ID:zEcsEEOn]
key-pressのあとにkey-releaseがなければ押し続けていることになる

353 名前:login:Penguin mailto:sage [2009/11/22(日) 01:06:56 ID:EckaNW4z]
>キーを押し続けているとkey-press-eventとkey-release-eventが交互に連続して飛んできて
押しつづけているのにrelease-eventがくるとかキーボードぶっこわれてるんじゃね

354 名前:login:Penguin mailto:sage [2009/11/22(日) 08:57:13 ID:OlBHF5u9]
>>351
Xのレベルではそれが通常の動作(モディファイアキー(の一部)以外では)。
Xはautorepeat時にKeyReleaseと続くKeyPressでタイムスタンプを同一にして
送ってくるので、GDKはそれを利用して>>352のように見せるコードが
一応入ってはいる、が、環境や同時に利用するプログラムといった条件によっては
それが働かないみたい。
自分の環境だけ考えるならGDKの該当部分に手を入れて常にその動作をするように
してしまうのが簡単。そうでないならやはり同様に次のイベント
(gdk_event_peekで得るのかな)とそのタイムスタンプを見て判断するんじゃないかと。

355 名前:login:Penguin mailto:sage [2009/11/22(日) 11:40:29 ID:xNfLAKy+]
>>352
>>353
>>354
レスありがとうございます。
gdk_event_peekはnullが返ってきたのでダメでしたが
gdk_event_getはタイムスタンプ同一のメッセージがしっかり返ってきました。
おかげさまで上手くいけそうです。

356 名前:login:Penguin mailto:sage [2009/11/22(日) 22:53:53 ID:LzN5AhP5]
>>347
こんな感じでどうでしょう?

163a165,168
> my $currentObject = $scrolled_window->child;
> if($currentObject) {
> $currentObject->destroy;
> }
204a210
> $drawable->show;
224a231
>


357 名前:犬山ぽち丸 mailto:sage [2009/11/26(木) 19:27:51 ID:bDLkSh53]
>>356
動かしたいように動かす事が出来ました、ありがとうございます。
とても基本的なところで躓いてしまってたみたいで、お恥ずかしい限りです。


358 名前:login:Penguin mailto:sage [2009/11/27(金) 20:56:42 ID:w3OKtepz]
GtkWidget
↑ ↑
GとWが大文字
これに気付くのに4日掛かった
コンパイルが通って空のウィンドウが表示されたときは
雄叫び上げちゃったよ。

359 名前:login:Penguin mailto:sage [2009/11/27(金) 21:30:47 ID:RzRcFxle]
www

とりあえず、なんだ、おめでとう

360 名前:login:Penguin mailto:sage [2009/11/27(金) 21:51:12 ID:HBGtWPJy]
Debianスレで GTK+ でウィンドウ出すのに四日かかったって言ってた人かw



361 名前:login:Penguin mailto:sage [2009/11/29(日) 00:46:08 ID:guffPLRY]
おめでとう、マジで
さぁ早くシグナルをコネクトしまくる作業に戻るんだ

362 名前:login:Penguin mailto:sage [2009/12/01(火) 22:14:30 ID:sy3qzyYB]
>>361
ぬるぽっ!

363 名前:login:Penguin mailto:sage [2009/12/01(火) 22:23:34 ID:xoJE4V4A]
>>362
ガッ
って言ってほしいのね。
もぉ、寂しがり屋さんなんだからぁ。

364 名前:login:Penguin mailto:sage [2009/12/05(土) 20:49:17 ID:CO55p0ew]
なんでこのスレ過疎ってんの?
プログラマー不在のスレなの?

365 名前:login:Penguin mailto:sage [2009/12/05(土) 21:08:39 ID:Gmpm8vF/]
>>364
そう思うならまず率先して何かを作って公開してみては如何でしょうか?


366 名前:login:Penguin mailto:sage [2009/12/06(日) 00:50:56 ID:fNpRY7Ok]
話題がないだけでしょ。

367 名前:login:Penguin mailto:sage [2009/12/07(月) 17:19:37 ID:CENTWTgC]
良くも悪くも枯れてるからな

368 名前:login:Penguin mailto:sage [2009/12/07(月) 20:01:28 ID:LkAo4E7O]
gtk2hsで書いてみたけど思ったより使いやすかった

369 名前:login:Penguin mailto:sage [2009/12/13(日) 11:19:39 ID:naHBDIjP]
gtkで外部装置から受信した温度データをグラフ描画するソフトつくってる。
左3/4が描画領域で残りに現在時刻や表示倍率の設定がある。

連続してデータ受信すると、時刻表示のタイマーがとまったり、倍率設定
のコンボボックスが操作できなくなるので、スレッド分けしようと思うのだけど
expose_eventを別スレッドにすることって可能?

370 名前:login:Penguin mailto:sage [2009/12/13(日) 11:42:32 ID:P93DdDFa]
できそうな気がするけど。
とりあえずやってみたら?



371 名前:login:Penguin [2009/12/16(水) 20:46:38 ID:laS/Dg3j]
>>365
作る気になれるようなことが必要なのではないですか。

372 名前:login:Penguin mailto:sage [2009/12/16(水) 20:51:22 ID:dPFj9y5E]
>>369
すごいですね
勉強のためにぜひソースを見せて頂けないでしょうか?

373 名前:login:Penguin mailto:sage [2009/12/16(水) 20:53:19 ID:dPFj9y5E]
もしくは、ソースリストを公開しているwebページを
ご存知でしたら教えてください。

374 名前:login:Penguin mailto:sage [2009/12/16(水) 20:54:06 ID:6soPE05o]
    ∧__∧
    (´・ω・)   いやどす
    ハ∨/^ヽ
   ノ::[三ノ :.、
   i)、_;|*く;  ノ
     |!: ::.".T~
     ハ、___|
"""~""""""~"""~"""~"


375 名前:login:Penguin mailto:sage [2009/12/16(水) 21:47:42 ID:c63j0iz9]
受信を別スレッドでやるのが普通じゃないの

376 名前:login:Penguin mailto:sage [2009/12/16(水) 22:44:30 ID:Q8cS+VLW]
ブロックする可能性のある処理は別スレッドにしないと止まる

377 名前:login:Penguin mailto:sage [2009/12/16(水) 23:39:53 ID:jaaomSx0]
Exposeを別スレッドって、ぷっ。
さすがLinux。

378 名前:login:Penguin mailto:sage [2009/12/17(木) 02:29:15 ID:F8Jdsro2]
何がおかしいのかよくわからん。

379 名前:login:Penguin [2009/12/26(土) 01:54:27 ID:XiSC9KS7]
GTK+の本を買おうと思うんですけど、この2冊だとどちらがいいですか?
・入門GTK+
・Foundations of GTK+ Development

プログラミングはCの基礎がわかっている程度です。
PHPもやってます。

380 名前:login:Penguin mailto:sage [2009/12/26(土) 13:18:25 ID:6MLS1ve1]
両方買えばいいじゃない。
あと、入門GTK+の方は作者がホームページで
本の内容を公開し始めてる



381 名前:login:Penguin mailto:sage [2009/12/26(土) 14:29:39 ID:YM2nDrzN]
Foundations of GTK+ Development は一部 google books にでてる

382 名前:379 mailto:sage [2009/12/27(日) 00:54:04 ID:HfaPMpb7]
>>380
両方買うと、結局一冊は読まないままになったりするタイプなので…。
あと、書籍代はケチるべきじゃないと思いますが、深刻な金欠状態なのです。

入門GTK+の作者サイトでの公開について、情報ありがとうございます。
休暇中に目を通してみようと思います。

>>381
Amazon USのレビューで「ネット上で読める」と書いてあったので、どこにあるのか気になってました。
書店になくて立ち読みできなかったので、Google Booksで読んで判断します。

どうもありがとうございました。

383 名前:login:Penguin mailto:sage [2009/12/27(日) 08:12:49 ID:Ri5kV8GM]
GTK+は公式チュートリアルが結構充実している方だと思うので、
それ読めばとりあえずリファレンスとサンプル眺めつつ使えるようになる。

それでも本が欲しくなるならあるウィジェットの使い方を
詳しく書いていて欲しいだとかマルチスレッドとの兼ね合いが
知りたいだとか(あまりいい例が出てこなくてすまん)
求めるものがはっきりしてくると思うので、
それから本を選んでもいいんじゃないだろうか。

384 名前:379 mailto:sage [2009/12/27(日) 20:27:25 ID:HfaPMpb7]
>>383
公式チュートリアルのことを知りませんでした…。
ダウンロードできたので、スマートフォン等にコピーして移動中でも読めそうです!
プリントアウトして持ち歩くのもいいかもしれません。
最終更新日が2002年10月27日と古いんですけど、問題ないですよね?

書籍を買ったほうが最後まで読みつづけようという意欲が持てる気がしますが、
とりあえず公式チュートリアルを読もうと思います。

ちなみに「Foundations of GTK+ Development」はGoogle Booksで見てみたら
とても良さそうでした。
「入門GTK+」のほうは著者ページで見つからなかったです・・。

385 名前:login:Penguin mailto:sage [2009/12/28(月) 02:58:56 ID:CtQUEG8Y]
> 最終更新日が2002年10月27日と古いんですけど、問題ないですよね?

……?

公式チュートリアルは
www.gtk.org/documentation.html でズバリ The Official Tutorial といってる
library.gnome.org/devel/gtk-tutorial/stable/
だよ。
GTK+のソースコードのtarball中にも入ってる(docs/tutorial/以下)。

386 名前:login:Penguin mailto:sage [2009/12/28(月) 07:38:54 ID:RlHoBGgo]
>>385
Tutorial Availabilityのページにあるリンク(ftp://ftp.gtk.org/pub/gtk/tutorial)から
ダウンロードしました。

387 名前:login:Penguin mailto:sage [2009/12/28(月) 11:47:38 ID:T0tfWrHc]
自分でいいと思ったならそれ読め。もう知らん。

388 名前:login:Penguin mailto:sage [2009/12/28(月) 22:21:50 ID:Uh78zlUy]
そう言うな。明日になればまたみんな仲良しななしさん

389 名前:login:Penguin mailto:sage [2009/12/28(月) 22:55:34 ID:AK9LsQvN]
>>387 何?どうしたの?

390 名前:login:Penguin mailto:sage [2010/01/09(土) 18:48:59 ID:khh4I0eb]
今日からGTK+を始めてみた
今までwindowsのvisual stdioしか使ったことなかったから、パスさえ通ってりゃ
#g++ hello.cpp
だけでコンパイルをやってくれると思っていた
今日一日かかって`pkg-config --cflags --libs gtk+-2.0`を知って
ウィンドウを出せた
疲れた



391 名前:login:Penguin mailto:sage [2010/01/10(日) 13:16:43 ID:3oa4ldyN]
VisualStudioだってオプションからディレクトリの設定しなきゃ
ビルドすらままならないだろうに、何言ってんだコイツ

ましてやコマンドラインからCL.exe呼び出すんなら、vcvarsall.batなり
vcvarsall.batで設定される環境変数群を、予めユーザー環境変数に定義して
おかなければCL.exeもg++と同じエラー吐いて止まるだろうに・・・

392 名前:login:Penguin mailto:sage [2010/01/10(日) 14:58:37 ID:zlmG+3hJ]
pixmapの背景色を黒くしたキャンバスを作って
その上に画像と文字を描画してて、文字は白

これに対してニコ動のコメント表示/非表示みたいなことをやりたい

文字を描画するときのみXORモードで書いてるんだけど
背景の黒の上に書かれた物は消えるけど、画像の上に書かれた
物は黒抜き去れて残ってしまう

説明わかりにくいかも知れないけど、なんか良い方法無いかな

393 名前:login:Penguin mailto:sage [2010/01/13(水) 03:10:04 ID:hKXsU3qa]
文字を描画しないだけでいいんじゃないの?

394 名前:login:Penguin mailto:sage [2010/01/13(水) 13:45:44 ID:rT8A3kXe]
>>390
チュートリアルとか見てないの?

395 名前:login:Penguin mailto:sage [2010/01/14(木) 01:41:29 ID:2htHqmwQ]
空気の福田はともかく、徳井が苦手でねぇ…

396 名前:login:Penguin mailto:sage [2010/01/15(金) 10:31:57 ID:2tKD4R7l]
GTK+を使って記述されているソフトとしては
gimp以外だとどんなものがありますか?
ソースリストを読んで勉強したいのですが

397 名前:login:Penguin mailto:sage [2010/01/15(金) 11:34:43 ID:+6ILVUJ5]
>>396
ja.wikipedia.org/wiki/GTK%2B#GTK.2B2.E3.82.92.E5.88.A9.E7.94.A8.E3.81.97.E3.81.9F.E3.82.BD.E3.83.95.E3.83.88.E3.82.A6.E3.82.A7.E3.82.A2
www.gtk.org/screenshots.html

398 名前:login:Penguin mailto:sage [2010/01/16(土) 13:06:47 ID:st13uJnk]
2chブラウザのJDとか、画像ヴューアのgqviewとか。

399 名前:login:Penguin mailto:sage [2010/01/23(土) 07:49:03 ID:c81zxfOz]
ツールバーにウィンドを表示しないようにするにはどうすればいいの?

400 名前:login:Penguin [2010/01/26(火) 09:24:59 ID:WUy9SOAf]
 linux 初心者です。C言語はバリバリです(ウィンドウズで)最近、fedora12 に乗り換え、システムを移植中なんですが、
ウィンドウ関連のところで、GTK+なるものが必要とのこと。そこで、インストールしましたが、
実際のソースコードをコンパイルしてもエラーがでます。
 勉強不足の所をご指摘いただけないでしょうか?

gtk+ インストール
yum -y install gtk+
でインストールしました。 800KBぐらいだったと思います。
そこで、次のコードを emacs でコンパイルします。
#include <gtk/gtk.h>

int main( int argc, char *argv[] )
{
GtkWidget *window;
gtk_init( &argc, &argv[] );
window = gtk_winidow_new( GTK_WINDOW_TOPLEVEL );
gtk_widget_show( window );
gtk_main();

return 0;
}
すると、error : gtk/gtk.h: そのようなファイルやディレクトリはありません。
その他これに関連するエラーがでます。
gtk/gtk.h が無いのか、と思って、
もう一度 gtk+ をインストールしようとすると、
gtk+-1.2.10-69.fc12.i686 はインストール済みか最新バージョンです
何もしません
とでます。
...よろしくお願いします。




401 名前:login:Penguin mailto:sage [2010/01/26(火) 11:26:21 ID:TXiGdVqu]
チュートリアルどおりやれば躓かないとおもうんだけどな
gtk2, gtk2-develを入れて
gcc test.c -o test `pkg-config --cflags --libs gtk+-2.0`

402 名前:login:Penguin [2010/01/26(火) 16:11:56 ID:R1nywYDP]
>> 401
 遅くなりましてすいません。返信ありがとうございます。
うまくいきました。
ウィンドウが表示されたとき、感動しました。
でも、emacs からはコンパイルできませんでしたので、リンカーあたりの
設定かな?と思っています。
 何はともあれ、ありがとうございました。







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<127KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef