QInputMethod Class
QInputMethodクラスは、アクティブなテキスト入力メソッドへのアクセスを提供します。詳細...
Header: | #include <QInputMethod> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Gui) target_link_libraries(mytarget PRIVATE Qt6::Gui) |
qmake: | QT += gui |
Inherits: | QObject |
パブリック・タイプ
enum | Action { Click, ContextMenu } |
プロパティ
|
|
パブリック関数
QRectF | anchorRectangle() const |
QRectF | cursorRectangle() const |
Qt::LayoutDirection | inputDirection() const |
QRectF | inputItemClipRectangle() const |
QRectF | inputItemRectangle() const |
QTransform | inputItemTransform() const |
bool | isAnimating() const |
bool | isVisible() const |
QRectF | keyboardRectangle() const |
QLocale | locale() const |
void | setInputItemRectangle(const QRectF &rect) |
void | setInputItemTransform(const QTransform &transform) |
void | setVisible(bool visible) |
パブリックスロット
void | commit() |
void | hide() |
void | invokeAction(QInputMethod::Action a, int cursorPosition) |
void | reset() |
void | show() |
void | update(Qt::InputMethodQueries queries) |
シグナル
void | anchorRectangleChanged() |
void | animatingChanged() |
void | cursorRectangleChanged() |
void | inputDirectionChanged(Qt::LayoutDirection newDirection) |
void | inputItemClipRectangleChanged() |
void | keyboardRectangleChanged() |
void | localeChanged() |
void | visibleChanged() |
静的パブリックメンバ
QVariant | queryFocusObject(Qt::InputMethodQuery query, const QVariant &argument) |
詳細説明
QInputMethod は、テキストエディタがプラットフォームのテキスト入力メソッドに統合するために使用され、より一般的には、アプリケーションビューが仮想キーボードの可視性やキーボードの寸法などの様々なテキスト入力メソッド関連情報を照会するために使用されます。
また、Qt Quick では、Qt.inputMethod
プロパティとして、Qt global object を通じて QML の QInputMethod にアクセスすることができます。
メンバータイプ ドキュメント
enum QInputMethod::Action
ユーザが実行したアクションの種類を示します。
定数 | 値 | 説明 |
---|---|---|
QInputMethod::Click | 0 | 通常のクリック/タップ |
QInputMethod::ContextMenu | 1 | コンテキストメニューのクリック/タップ (例: 右ボタンまたはタップ・アンド・ホールド) |
invokeAction()も参照してください 。
プロパティ ドキュメント
[read-only]
anchorRectangle : const QRectF
入力項目のアンカー矩形(ウィンドウ座標)。
アンカー矩形は、テキスト予測ポップアップのような様々なテキスト編集コントロールによって、テキスト選択に追従するためによく使われる。
アクセス関数:
QRectF | anchorRectangle() const |
通知シグナル:
void | anchorRectangleChanged() |
[read-only]
animating : const bool
仮想キーボードが開いたり閉じたりしているときはtrue。
キーボードが完全に開いているか閉じているときは、アニメーションは偽になります。animating
がtrue
でvisibility
がtrue
のとき、キーボードが開いている。animating
がtrue
でvisibility
が false のとき、キーボードは閉じられている。
アクセス機能:
bool | isAnimating() const |
ノーティファイア信号:
void | animatingChanged() |
[read-only]
cursorRectangle : const QRectF
入力項目のカーソル矩形をウィンドウ座標で示す。
カーソル矩形は、テキスト予測ポップアップのような様々なテキスト編集コントロールで、入力されたテキストを追うためによく使われる。
アクセス関数:
QRectF | cursorRectangle() const |
ノーティファイア信号:
void | cursorRectangleChanged() |
[read-only]
inputDirection : const Qt::LayoutDirection
現在の入力方向。
アクセス関数:
Qt::LayoutDirection | inputDirection() const |
ノーティファイア信号:
void | inputDirectionChanged(Qt::LayoutDirection newDirection) |
[read-only]
inputItemClipRectangle : const QRectF
入力項目の切り取られた矩形をウィンドウ座標で示す。
切り取られた入力矩形は、様々な入力メソッドで、その入力メソッド(例えば仮想キーボード)で利用可能な画面領域を決定するためによく使われる。
アクセス関数:
QRectF | inputItemClipRectangle() const |
ノーティファイア信号:
void | inputItemClipRectangleChanged() |
[read-only]
keyboardRectangle : const QRectF
ウィンドウ座標での仮想キーボードのジオメトリ。
キーボードのジオメトリを知ることができない場合、これは空の矩形になるかもしれません。これはアンドロイドのフローティングキーボードの場合です。
アクセス関数:
QRectF | keyboardRectangle() const |
通知シグナル:
void | keyboardRectangleChanged() |
[read-only]
locale : const QLocale
現在の入力ロケール。
アクセス関数:
QLocale | locale() const |
通知シグナル
void | localeChanged() |
[read-only]
visible : const bool
画面上の仮想キーボードの可視性
仮想キーボードがないデバイスでは、入力メソッドの可視性はfalseのままです。
アクセス関数:
bool | isVisible() const |
通知シグナル:
void | visibleChanged() |
メンバ関数 ドキュメント
[slot]
void QInputMethod::commit()
ユーザーが現在作成中の単語をエディタにコミットします。この関数は、テキスト予測機能を持つ入力メソッドや、文字入力に使用されるスクリプトと実際にエディタに追加されるスクリプトが異なるメソッドで主に必要とされます。例えばカーソルが他の場所に移動されたときなど、テキスト入力を中断するようなアクションは、commit()関数を呼び出すことで入力状態をフラッシュする必要があります。
[slot]
void QInputMethod::hide()
仮想キーボードの終了を要求します。
通常、アプリケーションはこの関数を呼び出す必要はありません。親ビューが閉じられたときなど、テキストエディタのフォーカスが失われたときに、キーボードは自動的に閉じるはずです。
QRectF QInputMethod::inputItemRectangle() const
入力項目のジオメトリを入力項目座標で返します。
setInputItemRectangle()も参照してください 。
QTransform QInputMethod::inputItemTransform() const
入力項目の座標からウィンドウ座標への変換を返します。
setInputItemTransform() も参照 。
[slot]
void QInputMethod::invokeAction(QInputMethod::Action a, int cursorPosition)
アクションa と与えられたcursorPosition によって示されるように、現在作曲中の単語がユーザーによってタップされたときに、入力アイテムによって呼び出されます。入力メソッドは、多くの場合この情報を使用して、より多くの単語候補をユーザーに提供します。
[static]
QVariant QInputMethod::queryFocusObject(Qt::InputMethodQuery query, const QVariant &argument)
現在のフォーカス・オブジェクトにパラメータargument でquery を送り、結果を返す。
[slot]
void QInputMethod::reset()
入力メソッドの状態をリセットします。例えば、テキストエディタは通常、テキストを挿入する前にこのメソッドを呼び出し、ウィジェットがテキストを受け入れる準備ができるようにします。
入力メソッドは、フォーカスされているエディタが変更されると自動的にリセットされます。
void QInputMethod::setInputItemRectangle(const QRectF &rect)
入力アイテムの座標をrect に設定します。これは、アイテムがシーン内で移動されたり、フォーカスが変更されるたびに、QQuickCanvasのようなフォーカスされたウィンドウによって更新される必要があります。
inputItemRectangle()も参照してください 。
void QInputMethod::setInputItemTransform(const QTransform &transform)
入力アイテム座標からウィンドウ座標への変換をtransform に設定します。アイテムがシーン内で移動されるたびに、QQuickCanvasのようなフォーカスされたウィンドウによってアイテムのトランスフォームが更新される必要があります。
inputItemTransform()も参照してください 。
void QInputMethod::setVisible(bool visible)
キーボードの可視性を制御します。show() (visible がtrue
の場合) またはhide() (visible がfalse
の場合) を呼び出すのと同じです。
isVisible()、show()、およびhide()も参照 。
[slot]
void QInputMethod::show()
開く仮想キーボードを要求する。プラットフォームが仮想キーボードを提供しない場合、visibilityはfalseのままです。
通常、アプリケーションはこの関数を呼び出す必要はなく、テキストエディタがフォーカスを得たときに自動的にキーボードが開くはずです。
[slot]
void QInputMethod::update(Qt::InputMethodQueries queries)
エディタの入力メソッドクエリ属性の状態が変更されたときに、プラットフォームの入力メソッドに通知するために入力アイテムによって呼び出されます。この関数を呼び出す際には、queries パラメータを使用して、何が変更されたかを伝える必要があります。このパラメータを使用して、入力メソッドは、QInputMethodQueryEvent で興味のある属性のクエリを行うことができます。
特に、カーソルの位置が変わるたびにupdateを呼び出すことは重要です。カーソルの位置が変わると、周囲のテキストやテキスト選択などの他のクエリー属性も変わることがよくあるからです。カーソル位置と一緒に変更されることが多い属性は、便宜上、Qt::ImQueryInput にまとめられています。
本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。