問題タブ [gdk]

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 投票する
2 に答える
1226 参照

gtk - GDK/GTK は同時に押された 2 つのキーを認識できますか?

だから私は、プラットフォーム スタイルのゲームの開発に取り組んでいます。C で記述し、グラフィック ツールキットとして GTK を使用しています。現在、画面に 3 つのブロックを配置するプログラムがあります。そのうちの 2 つはプラットフォームで、3 つ目は左右の矢印キーを押して横に移動できます。(まだスプライトを描いていないので、今のところ私のゲームのヒーローは青い四角形です)。また、「z」キーを押してジャンプする機能も実装しており、ジャンプしてプラットフォームに着地することができます。

ただ、ジャンプしながらの横移動はなかなか難しいです。これは、私のプログラムが同時に押された 2 つのキーを認識しないためだと思います。そのため、左または右の矢印を放し、z を押してから z を放し、右または左の矢印をもう一度押して、空中で横方向に移動する必要があります。左または右を押しながら z を同時に押すと、ヒーローが横方向にジャンプできるようになります。

GDK リファレンス マニュアルでは、GDK キー コードのリストについて「gdk/gdkkeysyms.h」(私のシステムでは /usr/include/gtk-3.0/gdk/gdkkeysyms.h にあります) を参照していますが、何も提供していません。 2 つのキーを同時に使用するためのガイダンス。GTK/GDK は、2 つのキーが同時に押されたイベントを認識できますか (GDK、GTK、どちらでも、2 つの間の線がどこにあるのかわかりませんが、それは別の質問のトピックだと思います...)? どのように適用しますか?(単一のキーの場合、次のようなことを行うことでコードを取得します

しかし、これが 2 つのキーの場合にどのようになるかはよくわかりません)。

ご協力いただきありがとうございます!

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

c - GDK シグナル、キープレス、およびキー マスク

GUIウィンドウでユーザーキープレスCtrl + dをキャッチして終了しようとしています。私のコードは次のようになります。

これは私のラップトップ(Ubuntu 11.04、gcc 4.5.2、libgtk 2.24.4)で動作します。しかし、新しいシステム (Ubuntu 12.10、gcc 4.7.2、libgtk 2.24.13) で同じことを行うと、機能しません。

g_print("%u\n", event->state);ステートメントの前に追加しましifた。 を押すCtrlと、event->stateドキュメントの 4 または 1 << 2 ではなく 20 であることが示されます。を 20に変更するGDK_CONTROL_MASKと、新しいシステムでは機能しますが、古いシステムでは機能しません。なぜこうなったのか、どうすれば直せるのか誰か教えてください。

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

c# - GDK.Window の Title プロパティを読み取る方法

Mono 用の .NET Windows アプリケーションを Linux (Ubuntu) で実行するように変換しています。機能の 1 つは、ネイティブ ライブラリ (user32.dll) に依存します。アプリケーションの変換について説明している Mono ガイド ( Linux Platform Differences ) では、このコードを変更する方法が 1 つ提案されています。

GDK を使用して、プロパティ Gdk.Global.ActiveWindow を介してアクセスした Gdk.Window のタイトルにアクセスしようとしています。しかし、コンパイル時に次のエラーが見つかりました。

TitleActiveW のプロパティを読み取るコードを削除すると、すべて正常に動作します。このプロパティを読み取る別の方法はありますか?

ここで私の仕事の単位:

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

c++ - Gdk::Pixbuf でピクセル値を取得、Gdk::Cairo でピクセル値を設定

私はC++ でGdk::Pixbuf画像を表示するためにa を使用しています:Gdk::Cairo

この画像は白黒で、輝度が特定のしきい値を超えているいくつかのピクセルを取り出す必要があります。そのために、それらのピクセルに色を付けたいと思います。

まず、Pixbuf 画像の特定のピクセルの輝度を取得する方法がわかりません (Web で見つけることもできません)。

第二に、長さ 1 の線を描画する以外に、ピクセルを描画する別の方法が見つかりません (これは一種の醜い解決策です)。

これについて私を助けてもらえますか?可能であれば、ライブラリの変更は避けたい...

ありがとうございました

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

c# - プログラムでフォームを作成し、フォームにビットマップを表示しますか?

プラットフォーム: UBUNTU
IDE: MonoDevelop 2.8.6.3
言語: C#.NET

スクリーンショットを作成し、そのスクリーンショットをビットマップとして返​​す関数を作成しました。このような:

/* ビットマップデータを格納する変数 */
Bitmap bmp;

/* スクリーンショットを作成します。結果を変数 'bmp' に返す */
getScreenShot(bmp);

私の質問は:

スクリーンショット (つまり bmp データ) を表示するフォーム/ウィンドウ (または意味のあるもの) を作成するにはどうすればよいですか? プログラミングでやりたい。

私はこのようにそれをやろうとしました:

私もこれを試しましたが、うまくいきません。

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

python - gi.repository から gtk.gdk をインポートするにはどうすればよいですか

x画面のスクリーンショットを撮るこのpythonコードがあります。

from gi.repository import Gdk動作しますが、代わりに gtk.gdkをインポートする必要があります。私は次のことを試しました:

しかし:

このスクリプトに gi.repository を完全に使用する方法はありますか? ありがとう

編集: AttributeError: 'gtk.gdk.X11Window' object has no attribute 'get_size' の問題を解決しました sz = w.get_geometry() の代わりに get_size を使用します。新しいコード:

しかし、このコードには別の問題もあります:

Pixbuf の「get_from_drawable」属性を使用するにはどうすればよいですか? 再度、感謝します!