問題タブ [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 に答える
67 参照

user-interface - フロー ウィジェットをコンテナー サイズに合わせます (スタック オーバーフローの右側のタグとまったく同じです!)

GTK アプリにタグのリストを実装しようとしています (GTKmm で記述しますが、その詳細はここでは重要ではありません)。ボタンとラベルを HBox に貼り付けるカスタム ウィジェットを作成して、各タグがメイン スタック オーバーフロー ページの右側に表示されるお気に入りタグと無視タグにかなり似ているようにしました。これらのカスタム ウィジェットをコンテナのサイズに合わせて「流す」ことができるコンテナはありますか? スペースがなくなるまで水平方向に追加し続けてから、新しい「線」から始めます。そうでない場合は、どのように作成することをお勧めしますか? Gtk::Container から始めて、各タグ ウィジェットの幅を手動で計算し、何らかの方法で手動で配置しますか? ピクセル単位の精度でウィジェットを配置することはできますか?

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

c++ - Gtk+: Cairo コンテキストからウィンドウのカーソルを設定するには?

Gtk::Windowaから aのカーソルを設定する次のコードを作成しましたCairo::Context。プログラムを実行してカーソルをウィンドウに移動すると、カーソルが上部の水平の黒い線に変わり、下部に定義できない白い形が続きます。カーソルが黒い 16×16 の正方形に変わることを期待していました。カーソルが意図した形にならないのはなぜですか?

を画面に描画するGdk::Pixmapと、きれいに見えます。を画面に描画するGdk::Pixbufとゴミが出ます。

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

linux - Eclipse CDT での gtkmm の使用

Eclipse CDT を使用して gtkmm Simple Exampleをコンパイルしようとしていますが、何らかの理由で機能しません。

これをMandriva LinuxとGCC 4.4.3でコンパイルしています

このエラーが発生します。これはリンク エラーだと思います。

エラーログが長くて申し訳ありませんが、短くする方法がわかりません

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

gtkmm - Gtk::DrawingArea にウィジェットを追加して配置する

Gtk::DrawingArea に Gtk::Widget を追加して検索する方法があるかどうか知りたいです。これを行う目的は、グラフィックがクリックされたときに、描画領域内のグラフィックに関する詳細情報を表示することです。詳細情報はリッチフォーマットにすることができます。

Gtk::DrawingArea には add(Widget) のような機能がないことがわかりました。したがって、回避策が利用可能かどうか疑問に思います。

よろしくお願いします。

チェン・カイ

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

c++ - C++でのGObjectインターフェースの実装

Glibmm(Gtkmmの一部)を使用してC++でGTypeインターフェースを実装しようとしています。オブジェクトはCのAPIに渡されます。残念ながら、gtkmmのドキュメントには、GObjectシステムをラップする方法の詳細が多く含まれていません。

私がこれまでに持っているもの:

すべてのメソッドとコンストラクターの実装は空です。コードは次のように使用されます。

successこのコードを実行するとfalseになり、コマンドラインに次のメッセージが表示されます。

(monagui:24831):GtkSourceView-CRITICAL **:gtk_source_completion_add_provider:アサーション `GTK_IS_SOURCE_COMPLETION_PROVIDER(プロバイダー)'が失敗しました

原資産gobj()は、このインターフェースを実装することになっていることを認識していないようです。クラスがから派生していない場合でもGlib::Objectgobj()nullを返します。このインターフェイスをCで実装するGObjectを手動で作成する必要がないことを願っています。

では、これを行う正しい方法は何ですか?前もって感謝します。

PS:興味のある方へ:SourceCompletionProvider

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

c++ - const メンバー関数の呼び出し

オブジェクトの const メンバー関数を呼び出しました。

以前にサイズを設定した後、get_size() という名前の MainWindow にオブジェクトを作成しました。

基本クラス Gtk::Window の get_size() メソッドを呼び出します。

エラーが発生します: 'Gtk::Window' は 'MainWindow' のアクセス可能なベースではありません。

MainWindow は Gtk::Window クラスから継承されます

この理由は何でしょうか。

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

c++ - Window::set_titleをgtkmmで使用する場合のウィンドウタイトルの切り捨て

アプリケーションのメインウィンドウのタイトルの名前を変更しようとしていますが、名前を変更しようとすると、名前が切り捨てられます。変換の問題かどうかを確認しようとしましたが、なぜこれが発生するのか本当にわかりません。この小さなプログラムを試してみてください。キャンセルを押すと、タイトルバーにデフォルトのアプリケーション名が表示されますが、ファイルを選択すると、ファイルの最初の行がタイトルとして表示されますが、代わりに切り捨てられます...文字列の終わりの前に常に3文字の文字列が表示されます、および3つのドット「...」が追加されます。

私は何が間違っているのですか?それとも私のgtkmmバージョンか何かのバグですか?私はgtkmm-2.4を使用しています。よろしくお願いします。

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

gtk - GTKMM/GTK+/GLADE ウェブカメラからビデオをロードする方法は?

だから私はgtkとグレードでGUIを作成しようとしており、ウェブカメラからビデオをキャプチャする必要があります。それを行う方法、またはそれが可能かどうかさえわかりません。誰か助けてくれませんか?


おそらくOPからの更新:

リナックスです!ありがとう、でもユーザーフレンドリーなQtに切り替えました:)

それでも、opencv の統合に問題があります。ボタンを押して画像を別の .xml ファイルに読み込む単純な GUI を qt に実装しようとしましたcvWindow

他のフォーラムの簡単なチュートリアルに従いましたが、 は開きますがcvWindow、画像は表示されません。

ソースコードは次のとおりです。

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

c++ - gtkmmコードでエラーが発生する

エラーは私にとって非常に珍しいものです..ファイル名がありません..正しい行番号ではありませんエラーは:メニューの作成に失敗しました:1行目のエラーchar 19:奇数文字'''、等号の後に開いた引用符が必要ですの属性「アクション」の値

ファイル:examplewindow.h

ファイル:main.cc

ファイル:examplewindow.cc

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

c++ - ウィジェットの高さ/幅を取得できません - gtkmm

gtkmm を使用してアプリケーションを作成しています。

いくつかの場合にのみアプリケーションのメイン ウィンドウに表示する単純なウィジェット クラスを作成しました。それ以外の場合は、ラベルを「無効」にして表示したいと思います。

それを実現するために、ウィジェットとラベルの両方を 1 つの VBox にパックし、それらを入れ替えるためにそれらを show() と hide() しました。

ただし、カスタム ウィジェットはラベルよりもはるかに大きいため、ラベルのサイズを少し変更する必要があります

label.set_size_request(x,y) を使用できることはわかっていますが、寸法を手動で入力すると機能します。ただし、使用する Gtk テーマなどによって、ウィジェットのサイズが少し異なる場合があることは承知しています。

*ウィジェットとまったく同じサイズのラベルを設定したいと思います。ただし、widget.get_height()* を使用しても機能しません 。常に 1 が返されます。


メインウィンドウのコンストラクター内からこれを行うことが手がかりになるかもしれません。