CheckDelegate QML Type
オン・オフを切り替えられるチェック・インジケータを持つアイテム・デリゲート。詳細...
Import Statement: | import QtQuick.Controls |
Inherits: |
プロパティ
- checkState : enumeration
- nextCheckState : function
(since QtQuick.Controls 2.4 (Qt 5.11))
- tristate : bool
詳細説明
CheckDelegate は、オン(チェック)かオフ(チェックなし)を切り替えられるアイテムデリゲートを提示する。チェックデリゲートは通常、リスト内のオプションのセットから 1 つ以上のオプションを選択するために使用されます。より小さなオプションの集合や、 一意に識別する必要があるオプションの場合は、CheckBox を代わりに使うことを検討してください。
CheckDelegate は、その API をItemDelegate から継承し、AbstractButton から継承しています。例えば、text を設定し、AbstractButton APIを使用してclicks に反応することができます。チェック・デリゲートの状態は、checked プロパティで設定できます。
checkedとuncheckedの状態に加えて、第3の状態としてpartially checkedがあります。部分的にチェックされた状態は、tristate プロパティを使用して有効にすることができます。この状態は、通常のchecked/unchecked状態を決定できないことを示します。一般的には、チェックデリゲートに影響を与える他の状態があるためです。この状態は、ツリービューで複数の子ノードが選択されている場合などに便利です。
ListView { model: ["Option 1", "Option 2", "Option 3"] delegate: CheckDelegate { text: modelData } }
CheckDelegate,Delegate Controls,CheckBoxのカスタマイズも参照してください 。
プロパティの説明
checkState : enumeration |
nextCheckState : function |
このプロパティは、チェックデリゲートがタッチ、マウス、またはキーボードによってユーザーによってインタラクティブに切り替えられるたびに、次のチェック状態を決定するために呼び出されるコールバック関数を保持します。
デフォルトでは、通常のチェック・デリゲートは、Qt.Unchecked
とQt.Checked
の状態を循環し、トライステート・チェック・デリゲートは、Qt.Unchecked
、Qt.PartiallyChecked
、Qt.Checked
の状態を循環します。
nextCheckState
コールバック関数は、デフォルトの動作をオーバーライドできます。以下の例では、トライステート・チェック・デリゲートを実装しています。このデリゲートは、外部条件によって部分的にチェックされた状態を提示することができますが、ユーザーによってインタラクティブに切り替えられたときに、部分的にチェックされた状態に循環することはありません。
CheckDelegate { tristate: true checkState: allChildrenChecked ? Qt.Checked : anyChildChecked ? Qt.PartiallyChecked : Qt.Unchecked nextCheckState: function() { if (checkState === Qt.Checked) return Qt.Unchecked else return Qt.Checked } }
このプロパティは、QtQuick.Controls 2.4(Qt 5.11)で導入されました。
tristate : bool |
このプロパティは、チェックデリゲートが3つの状態を持つかどうかを決定します。
下のアニメーションでは、最初のチェックデリゲートがトライステートになっています:
デフォルトはfalse
、つまりデリゲートは2つの状態しか持たない。
© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.