問題タブ [qkeyevent]

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 に答える
298 参照

qt4 - Qt - 整数のみを受け入れる LineEdit に Key Pressed イベントを使用する方法

私は Qt C++ の初心者です。私はQLineEditを持っています。整数のみを入力する必要があります。アルファベットまたはその他の文字を押すと、QLineEditはそれを受け入れません。C++を使用してqtでこれを行う方法は? これを解決するために助けてください。

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

c++ - アプリのQKeyEventが機能しない

キーイベントに応答するレトロなスネーカーをプログラムしたいのですが、コードは次のとおりです。

paint.h

paint.cpp

機能keypress()に注目してください、機能は何にも接続されていないのだろうか、それは機能するでしょうか?実際にはそうではありませんでしたが、アクティブにする方法がわかりません。他に何かする必要がありますか?

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

qt - ボタンを押している間の短い待ち時間をどのように妨げますか?

QKeyPressEvent を使用して QGraphicsPixmapItem を移動するプログラムを作成しました (アイテムを移動するために ASDW を使用しています)。問題は、アイテムを離さずにボタンを押すとスムーズに移動しないことです。ボタンを離さずに AAAAAAAAAAAAAAA と書くのと同じです。最初に少し動いてから、もう少し待ってから続行します。これを修正する方法を知っている人はいますか?

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

c++ - KeyReleaseEvent と Button をマージする方法

マージ方法KeyReleaseEventQPushButton使用方法signal。つまり、ユーザーがエンター キー ボタンを押すたびに、SLOT を使用して関数を呼び出す必要があります。では、信号で何を使用する必要がありますか?

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

c++ - Qt の QKeyEvent からキーの「名前」を取得する

キーの名前を取得する簡単な方法はありますか (キーコード「16777235」を取得する代わりに、キーイベントから「上向き矢印」のようなもの)? 自分でキー名のリストを作成する必要がありますか?

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

c++ - QKeyEvent を受け入れる/無視する方法

http://qt-project.org/doc/qt-5/qwidget.html#keyPressEvent

QKeyEvent は isAccepted() == true で始まることに注意してください。そのため、QKeyEvent::accept() を呼び出す必要はありません。キーを操作する場合は基本クラスの実装を呼び出さないでください。

http://qt-project.org/doc/qt-5/qkeyevent.html#details

キー イベントには、レシーバーがキー イベントを処理するかどうかを示す特別な受け入れフラグが含まれています。キーの押下またはリリース イベントがウィジェットで処理されない場合は、ignore() を呼び出す必要があります。キー イベントは、ウィジェットが accept() でそれを受け入れるか、イベント フィルターがそれを消費するまで、親ウィジェット チェーンに伝搬されます。マルチメディア キーのキー イベントは、デフォルトでは無視されます。ウィジェットがこれらのイベントを処理する場合は、accept() を呼び出す必要があります。

それは少し混乱します。受け入れるかどうかを呼び出す必要がありますか? 処理しない場合は、基本実装を呼び出すか、無視を呼び出す必要がありますか?

最初のページでは、accept() を呼び出す必要はありませ

基本バージョンを呼び出すと、QWidget の場合は基本的に ignore() が呼び出されます。それは私のkeyPressedEventに戻り、無視された状態で戻り、QWidgetのバージョンが再び呼び出されて「キーイベントが親ウィジェットに伝播される」ことを意味しませんか?

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

qt - Qt 組み込みプロセスではなく、すべてのキー

私は Qt Embedded を使用しており、いくつかのキーパッドを備えたボードを持っています。私は eventFilter を使用し、ウィジェットの QKeyEvent をチェックしますが、Qt が反応しないボタンは 2 つだけです。eventFilter は呼び出されません。コードは次のとおりです。

しかし、物理キーは機能し、ドライバーも機能します。/dev/event2 から聞くことができます。

誰かがそれに苦労しましたか?ありがとう。

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

c++ - Qt OpenGLで動く2Dオブジェクトを作る

プレイヤーがサーバーに参加して戦車を走らせたり、撃ったりできるデスマッチのマルチプレイヤー「戦車」ゲームを書いています。いくつかの方法を試しましたが、満足のいくものではありません。

現在、私はQTimerマップ上の 1 人のプレーヤーで完全に機能するものを使用していますが、2 番目に参加すると、両方のプレーヤーが遅れ始めます。

keyPressEventメソッド

keyPressEventkeyReleaseEventリリースイベントの代わりにfekeyUp = falseステートメントがあります。

movePlayerメソッド

onTimerメソッド (tank の場所を含むメッセージをサーバーに送信します)

2 つ以上のタンクをスムーズに実行するという目標を達成するために、コードを作成/書き換えするにはどうすればよいですか?