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/
0482login:Penguin
2010/10/09(土) 00:01:38ID:BvF1QbPRC/C++ 以外では、
gtkが公式にサポートしているのがPython
Gnomeの公式アプリに使われているのがPython
UbuntuやFedoraでデフォルトでインストールされているのがPython
Anjuta等GTK系開発ツールのサポートが一番充実しているのがPython
0483474
2010/10/09(土) 00:20:06ID:HCJJF52Gおぉ、Python は gtk で公式にサポートされてるんだ。
それは、いいねぇ。
ruby も入れてくれんかな。
0484login:Penguin
2010/10/09(土) 04:01:15ID:mDHE/CAa忠誠を誓ってるGoogle様が使ってるから、好きなふりをしてるだけか?
そうはいっても本当はPerlが大好きなんだろ?
0485login:Penguin
2010/10/09(土) 06:24:12ID:Xt3OjFd+0486login:Penguin
2010/10/09(土) 13:25:25ID:JGqpR3KWPythonは30分チュートリアルを読むだけで他人の書いたコードでもスラスラ読めることが多い。
0487login:Penguin
2010/10/09(土) 13:39:33ID:3AdxyjT60488login:Penguin
2010/10/09(土) 13:59:17ID:pWZySSkO,' i |
| ! | | i | | i |
| | | | | | | 」_ . :|
| | | : : : :|: : │ i . :| . :| 「 { l:. . : . : . :|
│ │ : :|: : i _ノ: : : : ヽ、: :|: : : : |: : : : :/ }| | |: : : : : : :|
〈::| │: : 斗‐ 「 │: : : : :.:.| 「:.T ー-|- : : :| l|. l lヘ: : : : : :| まあ、いやらしい。
\:::L_」─‐-ンt云、└─- -┘ ィ乏ァ-.、─-:l l. | ', ヽ: : : : |
r.、:、:::∧ l∧イ;::::}` ´{;イ:;::::::}ヾ| } l l } 〉: : : :|
| |:::::::::ヘ 弋;r:ユ 辷_;:r:.ソ l/ | | |,/: : : : :|
| {、:::::::: ', ´  ̄ / /│:. : : :|
ヽ ヾ::::::::::! " " " "/ ノ:.: : : : l
|ヘ ヽ::::::}、 、 / /: : : : : : : ',
|: :ヽ \::::`:.、 ヽ_フ / /: : : : : : : : : : ヽ
|: :.:ィ\ \:::::::丶、 { /|_,.-‐'" ̄ \: ヽ
/ |: : :ヽ `ー==:≧ 、_ イ| / /:::::::/ ヽ:.}
/ l: : : :| 人:::::::::::| l:.:/:::::::/ ヽ
| ヽ: : l /、  ̄ ̄| l/:::::::/ |
| ∨ /::::::: ̄ ̄ | |::::::/ |
| / /::::::::::::::::::::::| l::::::{ |
0489login:Penguin
2010/10/10(日) 18:30:46ID:Sp+agnVp0490login:Penguin
2010/10/11(月) 18:54:49ID:VGide9Wk0491login:Penguin
2010/10/19(火) 16:15:51ID:EWnEpHL/0492login:Penguin
2010/10/19(火) 17:17:34ID:2NWEe5/4pythonは、VBAほど腐ってはいないぞ
ところでVBAの近代化って進んでいるのか?
Access VBA甘グラマ供の再利用は由々しき問題ぜよ
0493login:Penguin
2010/10/19(火) 19:29:33ID:mjCBYhC00494login:Penguin
2010/10/19(火) 19:47:43ID:/Nj/keXZどう考えてもGTKが悪いのではなく糞マックが悪いと思うんだが。
0495login:Penguin
2010/10/19(火) 19:49:07ID:Ux5sdFhe0496login:Penguin
2010/10/19(火) 20:39:28ID:2NWEe5/4そうなの?
ttp://www.microsoft.com/japan/msdn/vba/
なんて2003年でとまってんだけど、更新が。
0497login:Penguin
2010/10/19(火) 21:38:06ID:mjCBYhC0[HOWTO] Microsoft Office で Visual Basic for Applications から Visual Basic .NET クラス ライブラリを呼び出す方法
http://support.microsoft.com/kb/317535/ja
こういう事が出来るらしい。
けど一般的じゃないっぽいね。
まぁ互換性失われるし一般的にはならないように感じられるな…
0498login:Penguin
2010/10/20(水) 16:42:06ID:dibJXxntGTK+がマルチプラットフォームになるように吸収するんだろ?
だったら、Macは悪くない。
かと云って、「GTK+が悪い」と云うのはおこがましい。
文句云っていいのは、それ相当のものを作れる人だけだ。
0499login:Penguin
2010/10/20(水) 16:59:50ID:nkUeeiMO「同じようなモノをつくれるひとでなければ批評してはいけない」というのなら
・linuxの○○の部分が悪いといっていいのはOS開発者だけ
・ゲームの○○が面白くないといっていいのはゲーム開発者だけ
・携帯電話の○○が使いづらいといっていいのは端末開発者だけ
・新作映画のストーリーラインを批判していいのは映画監督だけ
そういうのって言論封殺っていわない? オープンソース風土とはだいぶ違う文化じゃない?
0500login:Penguin
2010/10/20(水) 17:17:25ID:xVoAed/u0501login:Penguin
2010/10/20(水) 21:35:34ID:9tE6IJS+0502login:Penguin
2010/10/22(金) 10:57:35ID:i0oNjkXQMacOSXみたいに日本語入力ができないとか絶望的ってほどではないが。
0503login:Penguin
2010/10/22(金) 11:53:18ID:r2m3k6+H今日からPython勉強してGUIなアプリを作ってみようと思っていたのだが・・。
Qtのほうがいいのかな。でも、GNOME使ってるしGtkがいいんだよな
0504login:Penguin
2010/10/22(金) 22:39:01ID:T3dIa7ziwxGlade
http://wxglade.sourceforge.net/
はどうかな?
0505login:Penguin
2010/10/24(日) 07:46:05ID:Vhl0qsDm開発体制の問題だろうね。
0506login:Penguin
2010/10/24(日) 22:57:17ID:uho4GCjVそれに日本語(2バイト文字)関連はGtkよりQtのが酷いしマシな方
0507login:Penguin
2010/10/26(火) 18:03:28ID:XGIO2f11現状はカラムの幅を超えた部分は消えてしまいます。自分で改行を入れた場合は次の行に表示されるので折り返しも出来そうな気はするのですが。
0508login:Penguin
2010/10/26(火) 18:05:34ID:O6NRu0pw0509login:Penguin
2010/10/26(火) 18:32:48ID:XGIO2f11ありがとうございます!
0510login:Penguin
2010/11/02(火) 19:29:02ID:0mcR1TdEあるいはTreeViewにGtkEditableを格納するようなことができればそれでもよいのですが。
0511login:Penguin
2010/11/02(火) 19:41:27ID:RVdg5wgRpango markupで対応するんじゃね?
0512login:Penguin
2010/11/04(木) 13:45:22ID:xBpDemuDg_object_set (renderer, "markup","ab<b>cd</b>e", NULL);
とかでできました。ありがとう!
0513login:Penguin
2010/11/07(日) 14:39:48ID:qFCSAFkGこれって、日本語に訳すとどういう単語が適切なのかな?
iteratorで「反復子、繰り返しの概念」って出てきて、いまいち意味がつかめず
iterって出てくると、まったくもって意味がわからん。
ググっても、熱核融合炉とか出てくるし…
0514login:Penguin
2010/11/07(日) 14:43:10ID:Um+oFuZbループの抽象化
0515login:Penguin
2010/11/07(日) 14:57:51ID:qFCSAFkGiteratorとiterは、まったく同じと考えりゃいいということ?
0516login:Penguin
2010/11/08(月) 06:15:04ID:Wxghvts2正確な話は分からないけど、Gtkで出てくる?Iterの類は"位置を指す物"と理解してる。
GtkTextIterでいうと、GtkTextBuffer中のどこかの位置を指す。
イテレータだと、意味するものが広くてピンとこない感じがする。
かといって、訳す場合に他にいい単語があるかは分からない。
0517login:Penguin
2010/11/08(月) 06:20:30ID:Wxghvts2"?Iter"は"なんとかIter"ってことね
0518login:Penguin
2010/11/08(月) 20:12:16ID:M/miEbwJものすごく参考にさせていただく。ありがとう。
0519login:Penguin
2010/11/09(火) 00:55:32ID:Tw+0pcNeポインタのようなものっていう概念が一番しっくり来る。
0520login:Penguin
2010/11/13(土) 16:17:20ID:Pqzt35wFものすごく返答が遅くなったけど、感謝します。
0521login:Penguin
2010/11/22(月) 02:59:05ID:PS3m5Gby"… is deprecated and should not be used in newly-written code."
ってのが、出てきます。
「推奨しないし、使うなよ」って意味だけど、どうすればいいの?
公開する予定の無いプログラムだから、無視して使ってるけど。
0522login:Penguin
2010/11/22(月) 03:05:51ID:9McU1lSw0523login:Penguin
2010/11/24(水) 15:54:13ID:euuHJfN4機能を無効にすることはできますでしょうか?
自分の環境ですとアクティブなRowは青い背景に白い文字でハイライト
されてしまいます。
RowのSelected状態は変えることができるのですが、そちらはRowが
Select時に灰色っぽくなるだけで問題ないのです。ハイライトの機能
の方を無効したいです。
0524login:Penguin
2010/11/29(月) 21:54:46ID:sMx9z6BSと、ボタンにアイコンを付けようとしても、アイコンが出てきません。
上の場合、「キャンセル(_C)」というラベルだけ出ます。
メニューバーにアイコンを付けようとしても、アイコンが出ません。
何か欠けてるんでしょうか?
0525login:Penguin
2010/11/29(月) 22:14:12ID:lGrvc++f0526login:Penguin
2010/11/29(月) 22:34:36ID:sMx9z6BSありがとう。今から調べます。
0527login:Penguin
2010/11/29(月) 22:58:14ID:sMx9z6BS525さんにヒントいただいて、devhelp読んで、ググったら下のとこが出た。
http://ubuntuforums.org/showthread.php?t=1135510
ここの逆をやって、アイコンが出ました。ありがとう。
0528login:Penguin
2010/11/29(月) 23:22:35ID:OgcvDSerつーか、俺もこれずっと悩んでた。
原因が分かってスッとしたよ。ありがとう!
0529login:Penguin
2010/11/30(火) 12:55:40ID:M+63bYwLありがとう!!
0530login:Penguin
2010/11/30(火) 16:19:03ID:TQa7Ptpzなんかよくわかんないけど、オレからもありがとう!
0531login:Penguin
2010/11/30(火) 21:51:44ID:o02+ms48なんのことかわからんけど、俺からもありがとう!
0532login:Penguin
2010/12/01(水) 23:14:33ID:xPo+2HeTWindows上で環境構築せずにすむから楽そうなんだけれど。
0533login:Penguin
2010/12/02(木) 00:56:21ID:zqStIY3v最近のFedoraはmingw関連のパッケージがたくさん追加されているから
Windows向けのクロスコンパイルは簡単だよ。
0534login:Penguin
2010/12/02(木) 08:40:09ID:TtpWl3rj調べてがんばってみる。
0535login:Penguin
2010/12/03(金) 13:50:17ID:G8uZw67f欲を言えばwarp-widthがカラムの幅に対して自動的に変わるようにしたいです。
0536login:Penguin
2010/12/03(金) 14:43:06ID:nwQzeTfGhttp://www.islascruz.org/html/index.php?blog/show/Wrap-text-in-a-TreeView-column.html
0537login:Penguin
2010/12/03(金) 16:46:38ID:G8uZw67fおお、pythonだけどCでも全然いけそうな対処ですね。
ありがとうございます!
0538login:Penguin
2010/12/13(月) 14:42:35ID:GOtpVrpZgtk_tree_view_set_grid_linesで水平のグリッドラインを表示した状態でcell-background-gdkを使ってセルの背景色を設定しているのですが、色をつけたセルだけグリッドラインが消えてしまいます。何か解決方法ってありますか?
0539login:Penguin
2011/01/09(日) 09:14:57ID:urRBMp8dGTKにて作成したウインドウを常に最前面に表示しておきたいのですが、
それを実現するにはどのようにすればよいでしょうか?
ビュアーのようなものを作っているのですが、他の作業をしながらも確認したいため
他のウインドウより手前に表示しておくことが出来ればと考えております。
0540login:Penguin
2011/01/09(日) 09:42:27ID:geIJW/Gp>GTKにて作成したウインドウを常に最前面に表示しておきたいのですが、
WM(ウィンドーマネージャ)側の設定で、できるんじゃないのかな。
0541login:Penguin
2011/01/09(日) 12:54:14ID:98wyOWKO0542login:Penguin
2011/01/09(日) 13:28:00ID:urRBMp8dありがとうございます。
うまく動きました。
0543login:Penguin
2011/01/10(月) 15:25:42ID:pdeWcU/o”ウィンドウを表示するために--クラスを作成する” で
>> self.wTree.add_from_file(os.path.dirname(os.path.abspath(__file__))+"/"+self.gladefile)
のところで
glib.GError: root 要素が間違っています: 'glade-interface'
となり止まってしまいます。どなたか解決方法がわかる方お願いします
0544login:Penguin
2011/01/10(月) 16:41:54ID:lxMobblKos.path.join(os.path.dirname(__file__), self.gladefile)
とかな
0545543
2011/01/10(月) 17:33:42ID:pdeWcU/oご迷惑おかけしました
0546login:Penguin
2011/01/11(火) 21:47:15ID:vH5X5SgRTreeViewを利用して、計算結果が順次追加されていくアプリケーションを制作しているのですが、
計算結果が追加されていくに連れて結果を見るにはスクロールが必用になっております。
自動でスクロールを一番下に持って行くにはどのようにすればいいのでしょうか?
理想としては、スクロールが一番下にされていれば、リストが追加されるたびに常に一番下に
スクロールされ、スクロールが途中になっていれば項目が増えてもスクロールは維持。
というふうにしたいです。
ScrolledWindowのset_vadjustmentを利用すればいいことはわかったのですが、
うまく動かすことができません。
0547login:Penguin
2011/01/11(火) 23:29:55ID:5lRRaNMx0548login:Penguin
2011/01/12(水) 00:28:52ID:vB7prOwPgtk.TreeViewColumnで幅を指定しているときにその幅を超える文字列は折り返したいんだけど、オプションが見当たらない。
オプションってないの?
0549login:Penguin
2011/01/12(水) 00:47:08ID:5/uHApeb0550548
2011/01/12(水) 18:24:47ID:vB7prOwPありがとう
CellRenderTextのほうで折り返しが設定出来たのか。
考えてみると、確かに折り返すのはTextだね。
関連でもうひとつ質問させてください
TreeViewColumnをset_resizable( True)にしているんだけど、カラムがリサイズされたときはどこのシグナルがでる?
自分なりに捜してみたのだけど、みつからない、。
0551login:Penguin
2011/01/12(水) 19:26:21ID:B0eGTMcl0552login:Penguin
2011/01/12(水) 21:39:01ID:DAHnc8sL0553548
2011/01/12(水) 21:41:05ID:vB7prOwP検索に出て気づきました。
すみません。ありがとうございました。
0554login:Penguin
2011/01/13(木) 18:44:21ID:XeFPXStO正確にはGTK#なんですがGTK+でもいいです。
ウィンドウを常に最背面に表示する方法はありますか?
検索するとこんなのが見つかったのですが、
#include <gdk/gdk.h>
#include <gdk/gdkx.h>
#include <gtk/gtk.h>
#include <X11/Xatom.h>
#define WIN_LAYER_DESKTOP 0
#define WIN_HINTS_SKIP_WINLIST (1<<1)
#define WIN_HINTS_SKIP_TASKBAR (1<<2)
#define XA_WIN_LAYER "_WIN_LAYER"
#define XA_WIN_HINTS "_WIN_HINTS"
ーーーーーーーーーーーーーーーーー
/* windowを一番下に置く */
data[0] = WIN_LAYER_DESKTOP;
gdk_property_change(GTK_WIDGET(window)->window,
gdk_atom_intern(XA_WIN_LAYER, False),
(GdkAtom) XA_CARDINAL, 32, PropModeReplace,
(unsigned char *) data, 1);
/* taskbarやwinlistにこのwindowを表示させないようにする */
data[0] = WIN_HINTS_SKIP_WINLIST | WIN_HINTS_SKIP_TASKBAR;
gdk_property_change(GTK_WIDGET(window)->window,
gdk_atom_intern(XA_WIN_HINTS, False),
(GdkAtom) XA_CARDINAL, 32, PropModeReplace,
(unsigned char *) data, 1);
XA_CARDINALってなんでしょう?? 上記ソース by http://www.host.or.jp/cgi-win/webboard/wb_cont.exe?programing+g+10016+NAME
0555login:Penguin
2011/01/13(木) 20:04:15ID:yufk+Tn2本家にいきましょう
GTK#本家
http://www.mono-project.com/GtkSharp
関連スレ
[Not Gtk+] Gtk#質問スレッド [mono]
http://hibari.2ch.net/test/read.cgi/linux/1294642865/
0556login:Penguin
2011/01/13(木) 20:14:13ID:Q+1lsYEj荒らしてんじゃねーよカス
0557login:Penguin
2011/01/13(木) 20:18:51ID:XeFPXStO煽り厨キター
0558login:Penguin
2011/01/13(木) 20:20:21ID:XeFPXStO本家のフォーラムで聞いてみようと思います。
0559login:Penguin
2011/01/14(金) 03:23:12ID:KnKuBbAYpythonでglade3でつくったLabelの内容を変更するには
どう直したらよいか教えていただけますか?
#!/usr/bin/env python
# -*- coding:utf-8 -*-
import os
import os.path
import gtk
import gtk.glade
class counterGTK:
def __init__(self):
self.gladefile = 'var0.1.glade'
self.wTree = gtk.Builder()
self.wTree.add_from_file(略)
# count number
self.number1 = 0
dic = {
"on_clicked1" : self.on_clicked1 ,
"on_clicked2" : self.on_clicked2 ,
"on_window1_destroy" : self.on_window1_destroy }
self.wTree.connect_signals(dic)
self.mainWindow = self.wTree.get_object("window1")
self.mainWindow.show_all()
def on_window1_destroy(self, widget):
gtk.main_quit()
def on_clicked1(self, widget, event=None):
self.number1 += 1
# !!!ここが変と表示が出ます。
self.mainWindow.set_text(str(self.number1))
if __name__ == "__main__":
略
0560login:Penguin
2011/01/14(金) 09:50:28ID:QJfXyK10http://hibari.2ch.net/tech/
0561login:Penguin
2011/01/15(土) 22:11:43ID:KQmBhVmmset_titleじゃ駄目?
0562login:Penguin
2011/01/17(月) 01:04:20ID:VJob0is5マウスカーソルの下にあるテキストを取得する単純な
方法ってあるんでしょうか?ダブルクリックすると反転する単語
を取り込みたいのですが。出来ればトリプルクリックで反転する
一行も一緒に取り込みたいです。
0563login:Penguin
2011/01/17(月) 01:09:27ID:VJob0is5トリプルクリックでの反転の仕様は違うようですが、
マウス位置が所属するパラグラフ、単語、行を同時にとりこみたいのです。
言い忘れましたが想定する言語は英語などアルファベットのものです。
0564login:Penguin
2011/01/19(水) 01:15:17ID:AHjWAb2gWindows版とかMac版の出来が気になる
0565login:Penguin
2011/01/21(金) 13:29:12ID:oTTqy+gy遅れてすみません
self.mainWindow.set_title(str(self.number1))
に直すとウィンドウのタイトル欄の方に表示
おかげで一歩前進できたありがとうございました
0566login:Penguin
2011/01/25(火) 22:03:31ID:93ZVq4E+TreeViewを使ってリストを作成しているのですが、
ID 値段 名前 メモ
1 100 コーラ 自販機
2 200 カルピス 自販機
のようなリストがあるとして、リスト中を右クリックすると編集メニューを出すようにしたいのですが、
右クリックした際にメニューを出す方法や、右クリックした列の値の取得方法がわからず悩んでおります。
どのようなコードで実現できるでしょうか?
0567login:Penguin
2011/01/25(火) 22:15:19ID:3NJ+mNNa自分で調べる気はないのかね?
http://lmgtfy.com/?q=gtk+treeview+popup+menu
0568login:Penguin
2011/01/25(火) 23:38:42ID:93ZVq4E+いろいろなワードで調べてみたのですが、見つけることができませんでした。
>>567の検索候補も見てみたのですが、TreeViewで右クリックした時の処理はあるのですが、
右クリックした行の値を取得する方法はありませんでした。
0569login:Penguin
2011/01/25(火) 23:55:07ID:p4XnSN29テストしてないけど、gtk.TreeView.get_selection()で取れない?
0570login:Penguin
2011/01/26(水) 06:42:35ID:n1B9dBtN0571login:Penguin
2011/01/26(水) 08:43:37ID:LEML9YPE0572login:Penguin
2011/01/26(水) 09:51:05ID:z74Fwadf0573login:Penguin
2011/01/26(水) 11:33:09ID:h7bjSSMJ自作ハードウェアが動くか知りませんが、「gtk シリアルポート」でググると
アホみたいに検索結果が出てきますが。
http://www.linuxquestions.org/questions/programming-9/gtk-serial-port-communication-313238/
http://sourceforge.net/projects/gcomm/
0574570
2011/01/27(木) 04:23:46ID:HXLIqy/B0575login:Penguin
2011/01/28(金) 11:05:05ID:Gptdpqjnubuntuにて、pixmapにgdk_draw_stringで日本語を表示させたいのですが、文字化け
し、下記のメッセージが出ます。
does not support all the required character sets for the current locale "ja_JP.utf8"
どのようにしたら正常に表示できるようになるでしょうか。
0576login:Penguin
2011/01/29(土) 01:44:56ID:6hO1Bdmk0577login:Penguin
2011/01/29(土) 02:07:22ID:l0OT+bD3cairo使ってね
0578login:Penguin
2011/02/01(火) 23:01:59ID:4jG8Kz/pハイパーリンクにするにはどのようにすればいいのでしょうか?
0579login:Penguin
2011/02/02(水) 20:38:30ID:KRwtVrWug_spawn_command_line_sync()でgvfs-openコマンド呼べばいいんじゃね?
ダメならエラーが返るだろうし。
URLかどうか判断するなら、GRegex使うのが良いのかな?
0580login:Penguin
2011/02/12(土) 01:27:29ID:Tq5jzXI40581login:Penguin
2011/02/13(日) 02:06:32ID:Y2lUgTlR0582login:Penguin
2011/02/13(日) 16:56:29ID:q0+Fj2Ijこの画像を表示したまま、プログラムを終了したいのですが、
そのようなことは可能でしょうか。
(他のプログラムに上書きされるまで、プログラム終了後も画像を表示しつづける。)
/* 画像表示領域の生成 */
drawing_area = gtk_drawing_area_new();
gtk_widget_set_size_request( drawing_area,
gdk_pixbuf_get_width( pixbuf ),
gdk_pixbuf_get_height( pixbuf ) );
gtk_container_add( GTK_CONTAINER( window ), drawing_area );
g_signal_connect( G_OBJECT( window ), "delete_event",
G_CALLBACK( close_window ), pixbuf );
g_signal_connect( G_OBJECT( drawing_area ), "expose_event",
G_CALLBACK( expose_event ), pixbuf );
gtk_widget_show_all( window );
gtk_main();
■ このスレッドは過去ログ倉庫に格納されています