web-dev-qa-db-ja.com

QLineEditまたはQPushButtonでのEnterの検出

ゲーム用のアプリを作成しました。開始は簡単です。これは、システムがランダムに数字を選択し、ゲーマー(プレイヤー)が数字を見つけようとするゲームです。すべてがほぼ完了しました。アプリは、QLineEdit、ラベル、3つのボタンで構成されます。アプリがプレイヤーに希望する番号の範囲を伝えると、彼/彼女はbet_numberを入力し、再生ボタンをクリックします。そして、この番号によると、彼/彼女は、希望の番号がbet_numberからどれだけ離れているかについてのメッセージを受け取ります。

しかし、ボタンをクリックするのは少し嫌です。代わりに、再生にEnterキーを使用します。そのため、これを実現するには、具体的には2つの質問が必要です。

  1. Enterキーを使用して再生する方法を変更するにはどうすればよいですか(QLineEditがEnterキーが押されたことを検出したときに知る必要があるということです)。このようにして、playメソッドを指すように適切にコーディングします。

  2. 再生ボタンにフォーカスがある場合、このボタンでエンターキーをどのように使用しますか? (ボタンがEnterキーを受け入れるようにする)

28
arkero24

QLineEditは、ユーザーがEnterキーを押している間、信号returnPressed()を出力します。 http://qt-project.org/doc/qt-4.8/qlineedit。 html#signals 。この信号をボタンのclick()スロットに接続するか、ボタンのclicked()信号が接続されているものを直接呼び出すことができます。

12
rainer