QKeySequence Class

QKeySequence クラスは、ショートカットで使用されるキーシーケンスをカプセル化します。詳細...

Header: #include <QKeySequence>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

パブリック・タイプ

enum SequenceFormat { NativeText, PortableText }
enum SequenceMatch { NoMatch, PartialMatch, ExactMatch }
enum StandardKey { AddTab, Back, Backspace, Bold, Close, …, Cancel }

パブリック関数

QKeySequence()
QKeySequence(QKeySequence::StandardKey key)
QKeySequence(const QString &key, QKeySequence::SequenceFormat format = NativeText)
QKeySequence(QKeyCombination k1, QKeyCombination k2 = QKeyCombination::fromCombined(0), QKeyCombination k3 = QKeyCombination::fromCombined(0), QKeyCombination k4 = QKeyCombination::fromCombined(0))
QKeySequence(int k1, int k2 = 0, int k3 = 0, int k4 = 0)
QKeySequence(const QKeySequence &keysequence)
~QKeySequence()
int count() const
bool isEmpty() const
QKeySequence::SequenceMatch matches(const QKeySequence &seq) const
void swap(QKeySequence &other)
QString toString(QKeySequence::SequenceFormat format = PortableText) const
QVariant operator QVariant() const
bool operator!=(const QKeySequence &other) const
bool operator<(const QKeySequence &other) const
bool operator<=(const QKeySequence &other) const
QKeySequence &operator=(QKeySequence &&other)
QKeySequence &operator=(const QKeySequence &other)
bool operator==(const QKeySequence &other) const
bool operator>(const QKeySequence &other) const
bool operator>=(const QKeySequence &other) const
QKeyCombination operator[](uint index) const

静的パブリック・メンバ

QKeySequence fromString(const QString &str, QKeySequence::SequenceFormat format = PortableText)
QList<QKeySequence> keyBindings(QKeySequence::StandardKey key)
QList<QKeySequence> listFromString(const QString &str, QKeySequence::SequenceFormat format = PortableText)
QString listToString(const QList<QKeySequence> &list, QKeySequence::SequenceFormat format = PortableText)
QKeySequence mnemonic(const QString &text)
size_t qHash(const QKeySequence &key, size_t seed = 0)
void qt_set_sequence_auto_mnemonic(bool b)
QDataStream &operator<<(QDataStream &stream, const QKeySequence &sequence)
QDataStream &operator>>(QDataStream &stream, QKeySequence &sequence)

詳細説明

最も一般的な形式では、キー配列は、何らかのアクションを実行するために一緒に使用しなければならないキーの組み合わせを記述します。キーシーケンスは、QAction オブジェクトとともに使用され、どのキーボードショートカットがアクションのトリガーとして使用できるかを指定します。

キー配列は、3つの異なる方法でキーボードショートカットとして使用するために構築することができます:

  • 標準的なショートカットの場合、standard key を使用して、各ショートカットに関連付けられたプラットフォーム固有のキーシーケンスを要求することができます。
  • カスタム・ショートカットの場合、"Ctrl+X "のような人間が読める文字列を使用することができ、異なる言語のユーザーのために適切なショートカットに翻訳することができます。翻訳は "QShortcut" コンテキストで行われます。
  • ハードコードされたショートカットの場合、Qt::KeyQt::KeyboardModifier の列挙値で定義された値の組み合わせで、整数のキーコードを指定することができます。各キーコードは、単一のQt::Key 値と、Qt::ShiftModifierQt::ControlModifierQt::AltModifierQt::MetaModifier などの0個以上の修飾子で構成される。

た と えばCtrl P は、 文書を印刷す る 際のシ ョ ー ト カ ッ ト と し て用い ら れ る シーケ ン ス であ り 、 以下のいずれかの方法で指定す る こ と がで き ます:

QKeySequence(QKeySequence::Print);
QKeySequence(tr("Ctrl+P"));
QKeySequence(tr("Ctrl+p"));
QKeySequence(Qt::CTRL | Qt::Key_P);
QKeySequence(Qt::CTRL + Qt::Key_P); // deprecated

文字の場合、指定文字列の大文字と小文字は関係ないことに注意。上記の例では、"Ctrl+P "で指定したショートカットを有効にするために、Shift キーを押し続ける必要はない。しかし、他のキーの場合、Shift を指定されていない追加修飾キーとして使用すると、開発者が使用しているキーボードと異なるレイアウトのアプリケーションのユーザーが混乱する可能性があります。詳しくは後述のKeyboard Layout Issues の項を参照のこと。

可能であれば、標準的なショートカットを使うことが望ましいです。非標準のショートカットのキーシーケンスを作成する場合は、ハードコードされた整数値ではなく、人間が読める文字列を使用する必要があります。

QKeySequence オブジェクトは、QString にキャストして、人間が読めるように翻訳されたバージョンのシーケンスを得ることができます。同様に、toString ()関数は、メニューで使用するための人間が読める文字列を生成します。Appleプラットフォームでは、Macintoshキーボードの特殊キーを使ったキーボードショートカットを記述するために、適切なシンボルが使用されます。

ハードコードされたキーコードを指定する別の方法は、文字のUnicodeコードポイントを使用することです。例えば、'A'は、Qt::Key_A と同じキーシーケンスを与えます。

注: Appleプラットフォームでは、「Ctrl」、Qt::CTRLQt::Key_ControlQt::ControlModifier への参照はMacintoshキーボードのCommand キーに対応し、「Meta」、Qt::METAQt::Key_MetaQt::MetaModifier への参照はControl キーに対応します。事実上、開発者はすべてのプラットフォームで同じショートカット記述を使うことができ、そのアプリケーションは自動的にAppleプラットフォームで期待通りに動作します。

標準ショートカット

QKeySequenceでは、一般的なアプリケーションでアクションを設定する際の手間を減らすために、standard keyboard shortcuts 。下の表は、広く使われている4つのプラットフォームのアプリケーションで、これらの標準ショートカットによく使われるキーシーケンスを示しています。Appleプラットフォームでは、Ctrl の値はMacintoshキーボードのCommand キーに対応し、Meta の値はControl キーに対応することに注意してください。

StandardKeyWindowsAppleプラットフォームKDE PlasmaGNOME
HelpContentsF1Ctrl+?F1F1
WhatsThisShift+F1Shift+F1Shift+F1Shift+F1
開くCtrl+OCtrl+OCtrl+OCtrl+O
閉じるCtrl+F4, Ctrl+WCtrl+W, Ctrl+F4Ctrl+WCtrl+W
保存Ctrl+SCtrl+SCtrl+SCtrl+S
終了Ctrl+QCtrl+QCtrl+Q
SaveAsCtrl+Shift+SCtrl+Shift+SCtrl+Shift+SCtrl+Shift+S
新規Ctrl+NCtrl+NCtrl+NCtrl+N
削除Del前方削除、Meta+DDel、Ctrl+DDel、Ctrl+D
カットCtrl+X、Shift+DelCtrl+X, Meta+KCtrl+X, F20, Shift+DelCtrl+X, F20, Shift+Del
コピーCtrl+C, Ctrl+InsCtrl+CCtrl+C, F16, Ctrl+InsCtrl+C, F16, Ctrl+Ins
貼り付けCtrl+V, Shift+InsCtrl+V, Meta+YCtrl+V, F18, Shift+入力Ctrl+V, F18, Shift+Ins
環境設定Ctrl+、
元に戻すCtrl+Z、Alt+バックスペースCtrl+ZCtrl+Z, F14Ctrl+Z, F14
やり直しCtrl+Y、Shift+Ctrl+Z、Alt+Shift+BackspaceCtrl+Shift+ZCtrl+Shift+ZCtrl+Shift+Z
バックAlt+左, バックスペースCtrl+[Alt+左Alt+左
前進Alt+右、Shift+バックスペースCtrl+] を押します。Alt+右Alt+右
リフレッシュF5F5F5Ctrl+R、F5
ZoomInCtrl+PlusCtrl+PlusCtrl+PlusCtrl+プラス
ZoomOutCtrl+マイナスCtrl+マイナスCtrl+マイナスCtrl+Minus
FullScreenF11、Alt+EnterCtrl+Meta+FF11、Ctrl+Shift+FCtrl+F11
プリントCtrl+PCtrl+PCtrl+PCtrl+P
AddTabCtrl+TCtrl+TCtrl+Shift+N, Ctrl+TCtrl+T
NextChildCtrl+Tab、前進、Ctrl+F6Ctrl+}、前進、Ctrl+TabCtrl+Tab、前進、Ctrl+カンマCtrl+タブ、前進
PreviousChildCtrl+Shift+Tab、戻る、Ctrl+Shift+F6Ctrl+{、戻る、Ctrl+Shift+TabCtrl+Shift+Tab、戻る、Ctrl+ピリオドCtrl+Shift+Tab, 戻る
検索Ctrl+FCtrl+FCtrl+FCtrl+F
FindNextF3, Ctrl+GCtrl+GF3Ctrl+G, F3
FindPreviousShift+F3、Ctrl+Shift+GCtrl+Shift+GShift+F3Ctrl+Shift+G、Shift+F3
置換Ctrl+H(なし)Ctrl+RCtrl+H
SelectAllCtrl+ACtrl+ACtrl+ACtrl+A
選択解除Ctrl+Shift+ACtrl+Shift+A
太字にするCtrl+BCtrl+BCtrl+BCtrl+B
イタリックCtrl+ICtrl+ICtrl+ICtrl+I
下線Ctrl+UCtrl+UCtrl+UCtrl+U
MoveToNextChar右、Meta+F
MoveToPreviousChar左, Meta+B
MoveToNextWordCtrl+右Alt+右Ctrl+右Ctrl+右
MoveToPreviousWordCtrl+左Alt+左Ctrl+左Ctrl+左
MoveToNextLine下、Meta+N
MoveToPreviousLine上, Meta+P
MoveToNextPagePgDownPgDown、Alt+PgDown、Meta+Down、Meta+PgDown、Meta+VPgDownPgDown
MoveToPreviousPagePgUpPgUp、Alt+PgUp、Meta+Up、Meta+PgUpPgUpPgUp
MoveToStartOfLineホームCtrl+左, Meta+左ホームホーム
MoveToEndOfLine終了Ctrl+右, Meta+右終了, Ctrl+E終了, Ctrl+E
MoveToStartOfBlock(なし)Alt+Up, Meta+A(なし)(none)
MoveToEndOfBlock(none)Alt+下、Meta+E(none)(none)
MoveToStartOfDocumentCtrl+ホームCtrl+上, ホームCtrl+HomeCtrl+Home
MoveToEndOfDocumentCtrl+EndCtrl+Down, EndCtrl+EndCtrl+End
SelectNextCharShift+右Shift+右Shift+RightShift+右
SelectPreviousCharShift+左Shift+左Shift+左Shift+左
SelectNextWordCtrl+Shift+右Alt+Shift+RightCtrl+Shift+右Ctrl+Shift+右
SelectPreviousWordCtrl+Shift+左Alt+Shift+左Ctrl+Shift+左Ctrl+Shift+左
SelectNextLineShift+下Shift+DownShift+DownShift+Down
SelectPreviousLineShift+UpShift+UpShift+UpShift+Up
SelectNextPageShift+PgDownShift+PgDownShift+PgDownShift+PgDown
SelectPreviousPageシフト+PgアップShift+PgUpShift+PgUpShift+PgUp
SelectStartOfLineShift+ホームCtrl+Shift+左Shift+HomeShift+Home
SelectEndOfLineShift+EndCtrl+Shift+RightShift+終了Shift+End
SelectStartOfBlock(なし)Alt+Shift+Up, Meta+Shift+A(なし)(none)
SelectEndOfBlock(なし)Alt+Shift+Down、Meta+Shift+E(なし)(なし)
SelectStartOfDocumentCtrl+Shift+HomeCtrl+Shift+↑、Shift+HomeCtrl+Shift+HomeCtrl+Shift+Home
SelectEndOfDocumentCtrl+Shift+EndCtrl+Shift+Down、Shift+EndCtrl+Shift+EndCtrl+Shift+End
DeleteStartOfWordCtrl+BackspaceAlt+バックスペースCtrl+バックスペースCtrl+バックスペース
DeleteEndOfWordCtrl+Del(なし)Ctrl+DelCtrl+Del
DeleteEndOfLine(なし)(none)Ctrl+KCtrl+K
DeleteCompleteLine(none)(none)Ctrl+UCtrl+U
InsertParagraphSeparatorエンターエンター入力Enter
InsertLineSeparatorShift+EnterMeta+Enter、Meta+OShift+EnterShift+Enterキー
バックスペース(なし)Delete、Meta+H(none)(なし)
キャンセルエスケープエスケープ、Ctrl+.エスケープエスケープ

標準ショートカットに使用されるキー配列はプラットフォームによって異なるため、意図せず同じキー配列を多くのアクションに割り当ててしまわないよう、各プラットフォームでショートカットをテストする必要があることに注意してください。

キーボードレイアウトの問題

多くのキー配列の仕様は、Ctrl S ("Ctrl+S")やCtrl C ("Ctrl+C")のように、アクション名の最初の文字を表すキーを選ぶのではなく、特定のタイプのキーボードのレイアウトに基づいて開発者によって選ばれます。さらに、特定の記号は特定のキーボードレイアウトの修飾キーでしか入力できないため、あるキーボードレイアウトで使用することを意図したキー配列は、異なるキーにマッピングされたり、まったくキーにマッピングされなかったり、異なるキーボードレイアウトで使用するために追加の修飾キーが必要になったりすることがあります。

例えば、Ctrl plusCtrl minus というショートカットは、グラフィックアプリケーションのズーム操作のショートカットとしてよく使われ、それぞれ「Ctrl++」と「Ctrl+-」と指定されることがあります。しかし、これらのショートカットがどのように指定され、解釈されるかは、キーボードレイアウトによって異なります。ノルウェー語キーボードのユーザーは、+- キーがキーボード上で隣接していないことに気づくだろうが、Shift キーを押さなくても両方のショートカットを起動することができる。しかし、イギリスのキーボードを使うユーザーは、+ シンボルを入力するためにShift キーを押し続ける必要があり、このショートカットは事実上「Ctrl+Shift+=」と同じになります。

ショートカットを有効にするために、キーボードで使用するすべての修飾子を完全に指定することに頼る開発者もいるかもしれませんが、これは異なるキーボードレイアウトのユーザーにとって予期せぬ動作につながります。

例えば、イギリスのキーボードを使用している開発者は、偶然にもCtrl plus と同じように動作するショートカットを作成するために、キー配列として「Ctrl+Shift+=」を指定することにするかもしれません。しかし、ノルウェーのキーボードではShift キーを使用して= キーにアクセスする必要があるため、必要なショートカットは事実上Ctrl Shift Shift = (不可能なキーの組み合わせ) となります。

その結果、人間が読める文字列とハードコードされたキーコードの両方は、さまざまな異なるキーボードレイアウトで使用できるキーシーケンスを指定するときに使用するには問題があります。開発者が意図したショートカットをユーザーが使えることを保証するのは、standard shortcuts の使用だけです。

にもかかわらず、人間が読める文字列を確実に使用することで、この問題に対処することができ、異なる言語のユーザーのためにキー配列の翻訳を行うことが可能になります。このアプローチは、キーボードが使用している言語の最も典型的なレイアウトを持つユーザーにとって成功するでしょう。

GNU Emacsスタイルのキー配列

GNU Emacsで使用されているキーシーケンスに似た、最大4つのキーコードを使用できるキーシーケンスは、複数引数のコンストラクタを使用するか、コンマで区切られたキーシーケンスの人間が読める文字列を渡すことで作成できます。

例えば、Ctrl X に続いてCtrl C というキー・シーケンスは、以下のどちらかの方法で指定することができる:

QKeySequence(tr("Ctrl+X, Ctrl+C"));
QKeySequence(Qt::CTRL | Qt::Key_X, Qt::CTRL | Qt::Key_C);
QKeySequence(Qt::CTRL + Qt::Key_X, Qt::CTRL + Qt::Key_C); // deprecated

警告: 警告: QKeySequence が作成される前にQApplication インスタンスが構築されている必要があります。

QShortcutも参照してください

メンバ・タイプのドキュメント

enum QKeySequence::SequenceFormat

定数説明
QKeySequence::NativeText0プラットフォーム固有の文字列としてのキーシーケンス。これは、翻訳されて表示されることを意味し、Appleプラットフォームでは、メニューバーのキーシーケンスに似ています。この列挙型は、ユーザに文字列を表示したい場合に最適です。
QKeySequence::PortableText1キー配列は、ファイルへの読み書きに適した "ポータブル "な形式で与えられます。多くの場合、WindowsやX11のネイティブテキストに似ています。

enum QKeySequence::SequenceMatch

定数説明
QKeySequence::NoMatch0キー配列が異なっており、部分的にさえ一致していない。
QKeySequence::PartialMatch1キー配列は部分的に一致するが、同じではない。
QKeySequence::ExactMatch2キー配列が同じ。

enum QKeySequence::StandardKey

この列挙型は標準的なキーバインディングを表す。プラットフォーム依存のキーボードショートカットをQAction に割り当てるために使用できます。

キーバインディングはプラットフォーム依存であることに注意してください。現在バインドされているショートカットは、keyBindings() を使って問い合わせることができます。

定数説明
QKeySequence::AddTab19新しいタブを追加する。
QKeySequence::Back13戻る
QKeySequence::Backspace69前の文字を削除
QKeySequence::Bold27テキストを太字にする
QKeySequence::Close4ドキュメント/タブを閉じる
QKeySequence::Copy9コピー
QKeySequence::Cut8カット
QKeySequence::Delete7削除
QKeySequence::DeleteEndOfLine60行末を削除
QKeySequence::DeleteEndOfWord59カーソル位置から単語を削除
QKeySequence::DeleteStartOfWord58カーソル位置までの単語の先頭を削除する。
QKeySequence::DeleteCompleteLine68行全体を削除
QKeySequence::Find22文書内検索
QKeySequence::FindNext23次の結果を検索
QKeySequence::FindPrevious24前の結果を検索
QKeySequence::Forward14前方に移動
QKeySequence::HelpContents1ヘルプを開く
QKeySequence::InsertLineSeparator62改行を挿入する
QKeySequence::InsertParagraphSeparator61段落を挿入する
QKeySequence::Italic28テキストを斜体にする
QKeySequence::MoveToEndOfBlock41カーソルをブロックの最後に移動する。このショートカットはAppleプラットフォームでのみ使用されます。
QKeySequence::MoveToEndOfDocument43カーソルを文書の末尾に移動する。
QKeySequence::MoveToEndOfLine39カーソルを行末に移動する。
QKeySequence::MoveToNextChar30カーソルを次の文字に移動する。
QKeySequence::MoveToNextLine34カーソルを次の行に移動する。
QKeySequence::MoveToNextPage36カーソルを次のページに移動する。
QKeySequence::MoveToNextWord32カーソルを次の単語に移動
QKeySequence::MoveToPreviousChar31カーソルを前の文字に移動する。
QKeySequence::MoveToPreviousLine35カーソルを前の行に移動
QKeySequence::MoveToPreviousPage37カーソルを前のページに移動
QKeySequence::MoveToPreviousWord33カーソルを前の単語に移動
QKeySequence::MoveToStartOfBlock40カーソルをブロックの先頭に移動する。このショートカットはAppleプラットフォームでのみ使用される。
QKeySequence::MoveToStartOfDocument42カーソルを文書の先頭に移動する。
QKeySequence::MoveToStartOfLine38カーソルを行頭に移動
QKeySequence::New6新規文書を作成する。
QKeySequence::NextChild20次のタブまたは子ウィンドウに移動する。
QKeySequence::Open3文書を開く
QKeySequence::Paste10ペーストする
QKeySequence::Preferences64環境設定ダイアログを開く
QKeySequence::PreviousChild21前のタブまたは子ウィンドウに移動する。
QKeySequence::Print18文書を印刷します。
QKeySequence::Quit65アプリケーションを終了します。
QKeySequence::Redo12やり直し
QKeySequence::Refresh15現在の文書を更新または再読み込みします。
QKeySequence::Replace25検索と置換
QKeySequence::SaveAs63ファイル名の入力を促した後に文書を保存
QKeySequence::Save5文書の保存
QKeySequence::SelectAll26すべてのテキストを選択
QKeySequence::Deselect67テキストの選択解除5.1以降
QKeySequence::SelectEndOfBlock55選択範囲をテキストブロックの最後まで拡張します。このショートカットはAppleプラットフォームでのみ使用されます。
QKeySequence::SelectEndOfDocument57選択範囲をドキュメントの最後まで拡張します。
QKeySequence::SelectEndOfLine53選択範囲を行末まで拡張します。
QKeySequence::SelectNextChar44選択範囲を次の文字まで拡張します。
QKeySequence::SelectNextLine48選択範囲を次の行まで拡張します。
QKeySequence::SelectNextPage50選択範囲を次のページまで拡張
QKeySequence::SelectNextWord46選択範囲を次の単語に拡張
QKeySequence::SelectPreviousChar45選択範囲を前の文字に拡張
QKeySequence::SelectPreviousLine49選択範囲を前の行に拡張
QKeySequence::SelectPreviousPage51選択範囲を前のページに拡張
QKeySequence::SelectPreviousWord47選択範囲を前の単語に拡張
QKeySequence::SelectStartOfBlock54選択範囲をテキストブロックの先頭まで拡張する。このショートカットはAppleプラットフォームでのみ使用されます。
QKeySequence::SelectStartOfDocument56選択範囲を文書の先頭まで拡張
QKeySequence::SelectStartOfLine52選択範囲を行頭まで拡張します。
QKeySequence::Underline29テキストに下線を引く。
QKeySequence::Undo11元に戻す。
QKeySequence::UnknownKey0解除キー
QKeySequence::WhatsThis2これは何ですか?
QKeySequence::ZoomIn16ズームイン
QKeySequence::ZoomOut17ズームアウト
QKeySequence::FullScreen66ウィンドウの状態をフルスクリーンに切り替える。
QKeySequence::Cancel70現在の操作をキャンセルする。

メンバー関数ドキュメント

QKeySequence::QKeySequence()

空のキーシーケンスを構築します。

QKeySequence::QKeySequence(QKeySequence::StandardKey key)

与えられたkey の QKeySequence オブジェクトを構築します。結果は、現在実行中のプラットフォームに依存します。

結果のオブジェクトは、key のキーバインディングリストの最初の要素に基づきます。

QKeySequence::QKeySequence(const QString &key, QKeySequence::SequenceFormat format = NativeText)

format に基づいて、key 文字列からキーシーケンスを作成します。

例えば「Ctrl+O」はCTRL+'O'を与える。文字列 "Ctrl"、"Shift"、"Alt"、"Meta "は、"QShortcut" コンテキスト(QObject::tr()を使用)で翻訳された同等物と同様に認識される。

例えば、"Alt+X,Ctrl+S,Q "のように、カンマで区切って最大4つのキーコードを入力することができます。

このコンストラクタは通常、tr() と共に使用され、ショートカットキーを翻訳で置き換えることができる:

QMenu *file = new QMenu(this);
file->addAction(tr("&Open..."), QKeySequence(tr("Ctrl+O", "File|Open")),
                this, &MainWindow::open);

File|Open "トランスレータのコメントに注意してください。これは決して必要なものではありませんが、人間の翻訳者に何らかのコンテキストを提供するものです。

QKeySequence::QKeySequence(QKeyCombination k1, QKeyCombination k2 = QKeyCombination::fromCombined(0), QKeyCombination k3 = QKeyCombination::fromCombined(0), QKeyCombination k4 = QKeyCombination::fromCombined(0))

k1k2k3k4 の最大4つのキーでキーシーケンスを構築する。

QKeyCombinationも参照のこと

QKeySequence::QKeySequence(int k1, int k2 = 0, int k3 = 0, int k4 = 0)

最大4つのキーでキーシーケンスを構築するk1k2k3k4

キーコードはQt::Key に列挙されており、Qt::ShiftModifier,Qt::ControlModifier,Qt::AltModifier,Qt::MetaModifier のような修飾子(Qt::KeyboardModifier を参照)と組み合わせることができます。

QKeySequence::QKeySequence(const QKeySequence &keysequence)

コピーコンストラクタ。keysequence のコピーを作成する。

[noexcept] QKeySequence::~QKeySequence()

キーシーケンスを破棄する。

int QKeySequence::count() const

キー配列のキーの数を返す。最大値は4である。

[static] QKeySequence QKeySequence::fromString(const QString &str, QKeySequence::SequenceFormat format = PortableText)

format に基づく文字列str からQKeySequence を返す。

toString()も参照のこと

bool QKeySequence::isEmpty() const

キーシーケンスが空の場合はtrue を返し、それ以外の場合は false を返します。

[static] QList<QKeySequence> QKeySequence::keyBindings(QKeySequence::StandardKey key)

与えられたkey に対するキーバインディングのリストを返す。こ の関数を呼び出 し た結果は、 タ ーゲ ッ ト プ ラ ッ ト フ ォーム に よ っ て異な り ます。リ ス ト の最初の要素は、 指定 さ れたプ ラ ッ ト フ ォームの主要なシ ョ ー ト カ ッ ト を示 し ます。結果に複数の結果が含まれる場合、これらは、指定されたkey の同じプラットフォーム上の代替ショートカットとみなすことができる。

[static] QList<QKeySequence> QKeySequence::listFromString(const QString &str, QKeySequence::SequenceFormat format = PortableText)

format をもとに、文字列str からQKeySequence のリストを返す。

fromString() およびlistToString()も参照のこと

[static] QString QKeySequence::listToString(const QList<QKeySequence> &list, QKeySequence::SequenceFormat format = PortableText)

format をもとに、list の文字列表現を返す。

toString() およびlistFromString()も参照

QKeySequence::SequenceMatch QKeySequence::matches(const QKeySequence &seq) const

配列をseq にマッチさせる。成功した場合はExactMatch を返し、seq が不完全にマッチした場合はPartialMatch を返し、配列に共通点がない場合はNoMatch を返す。seq の方が短い場合はNoMatch を返す。

[static] QKeySequence QKeySequence::mnemonic(const QString &text)

text のニーモニックに対応するショートカット・キー配列、またはニーモニックが見つからない場合は空のキー配列を返します。

例えば、 mnemonic("E&xit") はQt::ALT+Qt::Key_X を返し、 mnemonic("&Quit") はALT+Key_Q を返し、 mnemonic("Quit") は空のQKeySequence を返す。

[noexcept] void QKeySequence::swap(QKeySequence &other)

キー配列other をこのキー配列と入れ替える。この操作は非常に高速で、失敗することはない。

QString QKeySequence::toString(QKeySequence::SequenceFormat format = PortableText) const

format に基づいて、キー配列の文字列表現を返す。

例えば、Qt::CTRL+Qt::Key_O の値は、"Ctrl+O" となる。キーシーケンスに複数のキーコードがある場合、返される文字列では、「Alt+X, Ctrl+Y, Z」のように、それぞれがカンマで区切られる。Ctrl"、"Shift "などの文字列は、"QShortcut" コンテキストでQObject::tr() を使って変換される。

キーシーケンスにキーがない場合は、空の文字列が返される。

Appleプラットフォームでは、formatQKeySequence::NativeText である場合、返される文字列はメニューバーに表示されるシーケンスに似ている。

fromString()も参照のこと

QVariant QKeySequence::operator QVariant() const

キーシーケンスをQVariant

bool QKeySequence::operator!=(const QKeySequence &other) const

このキー配列がother のキー配列と等しくない場合はtrue を返し、そうでない場合はfalse を返す。

bool QKeySequence::operator<(const QKeySequence &other) const

このキー配列とother キー配列の任意の比較を提供する。保証されるのは、両方のキー配列が等しい場合は演算子がfalse を返し、等しくない場合は (ks1 < ks2) == !( ks2 < ks1) を返すことだけである。

この関数は、QKeySequence オブジェクトをQMap のキーとして使いたい場合などに便利です。

operator==()、operator!=()、operator>()、operator<=()、operator>=()も参照のこと

bool QKeySequence::operator<=(const QKeySequence &other) const

このキー配列がother のキー配列より小さいか等しい場合はtrue を返し、そうでない場合はfalse を返します。

operator==()、operator!=()、operator<()、operator>()、operator>=()も参照のこと

[noexcept] QKeySequence &QKeySequence::operator=(QKeySequence &&other)

Move-other をこのQKeySequence インスタンスに代入する。

QKeySequence &QKeySequence::operator=(const QKeySequence &other)

代入演算子。other キーシーケンスをこのオブジェクトに割り当てます。

bool QKeySequence::operator==(const QKeySequence &other) const

このキー配列がother キー配列と等しい場合はtrue を返し、そうでない場合はfalse を返す。

bool QKeySequence::operator>(const QKeySequence &other) const

このキー配列がother のキー配列より大きい場合はtrue を返し、そうでない場合はfalse を返します。

operator==()、operator!=()、operator<()、operator<=()、operator>=()も参照のこと

bool QKeySequence::operator>=(const QKeySequence &other) const

このキー配列がother のキー配列より大きいか等しい場合はtrue を返し、そうでない場合はfalse を返す。

operator==()、operator!=()、operator<()、operator>()、operator<=()も参照のこと

QKeyCombination QKeySequence::operator[](uint index) const

キー配列の位置index にある要素への参照を返します。これは、要素の読み込みにのみ使用できます。

関連する非メンバー

[noexcept] size_t qHash(const QKeySequence &key, size_t seed = 0)

seed をシードとして、key のハッシュ値を計算します。

void qt_set_sequence_auto_mnemonic(bool b)

メニュー項目やラベルなどのニーモニックを尊重するかどうかを指定します。WindowsとX11では、この機能はデフォルトでオンになっている。この機能がオフの場合(つまりb が false の場合)、QKeySequence::mnemonic() は常に空の文字列を返す。

注意: この関数はQtのヘッダーファイルでは宣言されていません。アプリケーションで使用するには、関数のプロトタイプを宣言してから呼び出してください。

QShortcutも参照してください

QDataStream &operator<<(QDataStream &stream, const QKeySequence &sequence)

キーsequencestream に書き込みます。

QDataStream 演算子のフォーマットも参照して ください。

QDataStream &operator>>(QDataStream &stream, QKeySequence &sequence)

キーシーケンスをstream からキーsequence に読み込みます。

QDataStream 演算子の書式も参照して ください。

本ドキュメントに含まれる文書の著作権は、それぞれの所有者に帰属します 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。