問題タブ [gtkmm]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
3533 参照

c++ - GTK:VBoxの高さを設定するにはどうすればよいですか?

こんにちはGTKMMを使ってアプリを作っています。スクリーンショットは以下のとおりです。

スクリーンショット

問題は、「マイラベル」を検索ボックスのすぐ下の上部に配置できないことです。

名前、検索ボックス、検索ボタンをHBoxにパックし、HBoxをVBoxにパックしてから、MyLabelをVBoxにパックします。

問題は、VBoxが2つの行に同じ高さを割り当てていることだと思います。したがって、MYLabelを上に揃えても、上は画面の中央になります。VBoxは2つの行の間に高さを均等に分散します。

VBox行の高さを設定する方法はありますか?または他の方法はありますか?

0 投票する
2 に答える
628 参照

linux - Gtk::MessageDialog Run がセグメンテーション違反をスローする

こんにちは、ダイアログ ボックスを使用してエラー メッセージを表示しようとしています。ただし、コードを実行すると、セグメンテーション違反が発生します。

関数は次のとおりです。

ファイルを開こうとすると、ファイルを開くことができない場合、このエラー ボックスを表示したいのですが、セグメンテーション エラーが発生し続けます。

0 投票する
3 に答える
12193 参照

linux - GTK+ libgio-2.0.so.0 がターゲット マシンにインストールされていない

gtkmm を使用するアプリケーションがあります。クライアントのマシンには、このライブラリがインストールされていません。彼が自分の Red Hat Linux で私のアプリケーションを実行すると、次のエラーが表示されます: libgio-2.0.so.0: cannot open shared object file: No such file or directory

クライアントのマシンにインストールするにはどうすればよいですか? yum をインストールできることはわかっていますが、Red Hat のクライアントにはアクティブなサブスクリプションが必要ですが、サブスクリプションの有効期限が切れているため、yum を使用できません。

yum を使用せずに libgio-2.0.so をインストールする方法はありますか?

0 投票する
1 に答える
877 参照

gtk - GtkMM のカスタム ウィジェットに ScrolledWindow サポートを追加するにはどうすればよいですか?

巨大なデータセットを表示することになっている Gtkmm 用のカスタム ウィジェットを作成しています (4096x256 文字のデータシートのようなものを想像してください)。

主に優雅さのためですが、Glade/Gtk-Builder エディターでの使用の可能性のためにも、このウィジェットで ScrolledWindow をネイティブにサポートする必要があります。つまり、ScrolledWindow の子として設定されると、スクロール可能なウィジェットとして認識されます。 、水平方向および垂直方向の調整オブジェクトを設定できるようになり、後で改ざんできます。

ウィジェットのコンストラクターで次のようなことを行う必要があります。

後で、ウィジェットが追加されたときに ScrolledWindow によって発行されたシグナルは、シグナル プロキシ メソッドなどを介してウィジェットによってキャッチされる必要がありますか? 何も思いつきません。

これどうやってするの?

0 投票する
1 に答える
75 参照

linux - RHEL3のGTKMM?

Red Hat Enterprise Linux 3にGTKMMをインストールするにはどうすればよいですか?

0 投票する
2 に答える
2243 参照

opengl - OpenGL/Gtkmm ゲーム - キーボードの移動

「OpenGL」でゲームをプログラミングし、「Gtkmm」をウィンドウマネージャーとして使用しています。カメラの移動にキーボードを使用したい(つまり、「UPキー」で前進、「DOWNキー」で後退など...)

しばらく前に、Java でプログラミングしたとき、この手法を使用して「移動」
しました。たとえば、アプリケーションが「UPキーを押して」信号を受信すると、その後、フラグ「shouldMoveForward」を「true」に設定し、後で「UP-key- release」信号を受信すると、フラグを「false」に戻します。
そして、「ゲームループ」はそのフラグを継続的にチェックし、それが真であればカメラを前方に動かし、そうでなければ何もしませんでした。

「Gtkmm」でも同じテクニックを使いたいと思います。したがって、 「Gtk::DrawingArea」のこれらの関数をオーバーライドしました。

しかし、問題は次のとおりです。たとえば、「UP」キーを押して 5 秒間押し続けると、次の一連の信号が発せられます。

「Linux で」ゲームを実行しているときに、前の状況が表示されます。

私が「Windows上」にいるとき、それは私が望むとおりです。

したがって、これは Gtkmm でカメラを移動するための「移植性のない」ソリューションのようです。

Gtkmm をウィンドウ マネージャーとして使用してカメラの移動を実現する他の ( 「PORTABLE」 ) ソリューションはありますか?

0 投票する
2 に答える
1758 参照

pygtk - Gtkmm : How to catch right click signal for a Gtk::Table?

I'm making an app using GTKMM and I want to know how to catch the right click signal from a Gtk::Table ?

And also how to catch if the Mouse is over a Gtk::Table ?

0 投票する
1 に答える
581 参照

mouse - Gtkmm-「Gdk::Window::pointer_grab」のトラブル

ウィンドウマネージャーとして「Gtkmm」を使ってFPS(ファーストパーソンシューティング)ゲームをプログラミングしていて、「マウスルック」をやりたいと思っています。したがって、すべてのマウスモーションイベントをアプリケーションウィンドウにリダイレクトするには、マウスポインタを「つかむ」必要があります。

その仕事をするために3つのオーバーロードされた関数があるようです、そして私は最初に最も単純なものを選びました:

この関数をアプリケーションに適用しようとしましたが、これまでのところ「悪い結果」がありました。希望どおりに動作せず、「Windows」と「Linux」での動作が「異なる」などです。 。

それで、これまでに行ったことを書き留めますが、最初に、私の目標は何ですか。「アプリケーションをウィンドウに配置し、ウィンドウを離れてもマウスでマウスルックを実行できるようにしたい。マウスポインタで」。

それでは、関数パラメーターを見てみましょう
。-> bool owner_events:「true」に設定すると、ウィンドウ内にいるときにのみイベントが発生しましたが、(さらに悪いことに)「false」に設定すると、取得しませんでした。 t任意のイベントを取得します-したがって、trueに設定します(より適切なオプション:-))
-> Gdk :: EventMask event_mask:キャッチしたいイベントがあるはずです。今のところ、私はマウスのモーションイベントにのみ興味があるので、「Gdk ::POINTER_MOTION_MASK」
->guint32タイムスタンプのみを配置します。これもわかりませんが、純粋な「0」を配置すると、グラブステータスはOK、つまり「GRAB_SUCCESS」(1、2、またはその他の数値に設定しようとすると、グラブステータスとして「GRAB_INVALID_TIME」が返されました)-「0」に設定しました

そして今、Linuxで実行すると、ポインターを取得し、ウィンドウの外側をクリックしても反応しません(したがって、ウィンドウは常に一番上にとどまります。これが「欲しい」ものです)が、問題が発生します。つまり、アプリケーションはイベントをキャッチしないか、ウィンドウ内にいるとき(owner_eventstrueに設定したとき)にのみイベントをキャッチします。

また、Windowsの場合はさらに悪いことになります。ウィンドウの外側をクリックすると、クリックした領域に切り替わります。つまり、これは「つかむことなく」と同じです。

誰かが私に、私が間違っていることを教えてもらえますか、またはGtkmmでグラブを使用する方法について少し例を教えてもらえますか?

0 投票する
1 に答える
999 参照

c++ - Gtk::Widget の相対位置の取得: get_allocation() が機能しない

Gtk::Widget親a に対するa の相対的な位置を取得する必要がありますGtk::Table。ほとんどの情報源 (例: http://library.gnome.org/devel/gtk-faq/stable/x642.html ) は、 を呼び出す必要があると述べていますGtk::Widget::get_allocation()。ただし、返さGtk::Allocationれるオブジェクトには常にx = -1y = -1width = 1、が含まれますheight = 1

Gtk::Tableこれは、オブジェクトが実際に公開されてレンダリングされる前に発生することに注意する必要があります。show_all_children()orへの呼び出しはcheck_resize()、子ウィジェットのジオメトリを再計算すると予想されますが、役に立ちません。

私は何を間違っていますか?前もって感謝します。

0 投票する
1 に答える
448 参照

c++ - gtkmmの形をした窓

Gtkmmでシェイプドウィンドウを作成するにはどうすればよいですか?形状はcairommを使用して定義する必要があります。