Dial QML Type
値を設定するために回転させる円形のダイヤル。詳細...
| Import Statement: | import QtQuick.Controls |
| Inherits: |
プロパティ
- angle : real
- endAngle : real
(since 6.6) - from : real
- handle : Item
- inputMode : enumeration
(since QtQuick.Controls 2.5 (Qt 5.12)) - live : bool
(since QtQuick.Controls 2.2 (Qt 5.9)) - position : real
- pressed : bool
- snapMode : enumeration
- startAngle : real
(since 6.6) - stepSize : real
- to : real
- value : real
- wrap : bool
信号
方法
詳細説明
「Dial」は、ステレオや産業用機器などに搭載されている従来のダイヤルノブに似ています。これにより、ユーザーは範囲内の値を指定することができます。
ダイヤルの値は、value プロパティで設定します。範囲は、from およびto プロパティで設定します。ループ動作を有効または無効にするには、wrap プロパティを使用します。
ダイヤルはキーボードで操作できます。以下の操作がサポートされています:
| 操作 | キー |
|---|---|
| value をstepSize | Qt.Key_Left |
| value を減少させるstepSize | Qt.Key_Down |
| value を以下に設定from | Qt.Key_Home |
| value を増加させるstepSize | Qt.Key_Right |
| value を以下だけ増やすstepSize | Qt.Key_Up |
| value を次のように設定するto | Qt.Key_End |
「Dial」は、3つのinput modes (入力モード)をサポートしています:Dial.Circular 、Dial.Horizontal 、Dial.Vertical 。円形入力モードは絶対入力方式を採用しており、ダイヤル内でのカーソルの位置がその値を直接反映します。水平および垂直入力モードは相対入力方式を採用しており、カーソルの位置の変化がダイヤルの値に「加算」されます。
次の図は、各入力モードが移動を追跡する方向を示しています:

「ダイヤルおよび入力コントロールのカスタマイズ」も参照してください 。
プロパティのドキュメント
angle : real [read-only]
このプロパティには、ハンドルの時計回りの角度(度単位)が格納されます。
角度は12時の位置で0となり、範囲はstartAngle からendAngle までです。
position 、startAngle 、およびendAngleも参照してください 。
endAngle : real [since 6.6]
このプロパティには、ダイヤルの終端角度(度単位)が格納されます。
これは、ダイヤルの最大値となるangle であり、具体的にはto となります。endAngleは、startAngle より大きく、720より小さく、かつstartAngle +360度以下でなければなりません。
このプロパティは Qt 6.6 で導入されました。
startAngle およびangleも参照してください 。
from : real
このプロパティは、範囲の開始値を保持します。デフォルト値は0.0 です。
handle : Item
このプロパティには、ダイヤルのハンドルが格納されます。
このハンドルは、ダイヤルの位置を示す視覚的な指標として機能します。
「ダイヤルのカスタマイズ」も参照してください 。
inputMode : enumeration [since QtQuick.Controls 2.5 (Qt 5.12)]
このプロパティは入力モードを保持します。
Dialは、Dial.Circular 、Dial.Horizontal 、Dial.Vertical の3つの入力モードをサポートしています。円形入力モードは絶対入力方式を採用しており、ダイヤル内のカーソルの位置がその値を直接反映します。水平および垂直入力モードは相対入力方式を採用しており、カーソルの位置の変化がダイヤルの値に「加算」されます。
次の図は、各入力モードが動きを追跡する方向を示しています:

デフォルト値はDial.Circular です。
このプロパティは、QtQuick.Controls 2.5 (Qt 5.12) で導入されました。
live : bool [since QtQuick.Controls 2.2 (Qt 5.9)]
このプロパティは、ハンドルがドラッグされている間、ダイアルがvalue プロパティに対してリアルタイムの更新を行うかどうかを指定します。
デフォルト値は `true` です。
このプロパティは、QtQuick.Controls 2.2 (Qt 5.9) で導入されました。
「value」も参照してください 。
position : real [read-only]
このプロパティは、ハンドルの論理的な位置を保持します。
この位置は、0.0 - 1.0 の範囲内で、コントロールの角度範囲(ハンドルを移動できる範囲)に対する割合として表されます。
「 value 」および「angle 」も参照してください 。
pressed : bool
このプロパティは、ダイヤルが押されているかどうかを保持します。
ダイヤルは、その上でマウスをクリックするか、Qt.Key_Left などのキーが押されたままの状態になると、押下状態になります。キーを押した際にダイヤルが押下状態にならないようにしたい場合(例えば、スタイル上の理由など)、Keys attached property を使用できます:
Dial {
Keys.onLeftPressed: {}
}true これにより、`pressed` 状態になるのは、マウスクリック時のみとなります。
snapMode : enumeration
このプロパティはスナップモードを保持します。
スナップモードは、stepSize と連携して、ハンドルをダイヤル上の特定のポイントにスナップさせるように機能します。
指定可能な値:
| 定数 | 説明 |
|---|---|
Dial.NoSnap | ダイヤルはスナップしません(既定値)。 |
Dial.SnapAlways | ハンドルをドラッグしている間、ダイヤルがスナップします。 |
Dial.SnapOnRelease | ダイアルはドラッグ中はスナップせず、ハンドルを離した後にのみスナップします。 |
関連項目: stepSize 。
startAngle : real [since 6.6]
このプロパティには、ダイヤルの開始角度(度単位)が格納されます。
これは、ダイヤルの最小値となるangle です。つまり、from となります。startAngleは、endAngle より小さく、-360より大きく、かつendAngle - 360度以上である必要があります。
このプロパティは Qt 6.6 で導入されました。
stepSize : real
このプロパティはステップサイズを保持します。
ステップサイズは、キーボードを介して操作された際に、ダイヤルの値が増減する量を決定します。たとえば、ステップサイズを0.2 に設定すると、ダイヤルの値は0.2 ずつ増減します。
ステップサイズは、snapMode がDial.NoSnap 以外の値に設定されている場合のみ、タッチおよびマウス操作に対して適用されます。
デフォルト値は `0.0` であり、これによりキーボード操作では実質的なステップサイズが `0.1 ` となります。
「 snapMode 」、「increase()」、および「decrease()」も参照してください 。
to : real
このプロパティは、範囲の終了値を保持します。デフォルト値は `1.0` です。
「 from 」および「value 」も参照してください 。
value : real
このプロパティの値は、from ~to の範囲内となります。デフォルト値は0.0 です。
「 position 」および「live 」も参照してください 。
wrap : bool
このプロパティは、ダイヤルがドラッグされた際に折り返されるかどうかを指定します。
たとえば、このプロパティがtrue に設定されている場合、ダイアルをto の位置を超えてドラッグすると、ハンドルはfrom の位置に配置され、その逆も同様です。
このプロパティがfalse に設定されている場合、ダイアルを「from」値と「to」値の間をドラッグすることはできません。
デフォルト値はfalse です。
シグナルのドキュメント
[since QtQuick.Controls 2.2 (Qt 5.9)] moved()
このシグナルは、ユーザーがタッチ、マウス、またはキー操作によってダイアルをインタラクティブに移動させたときに発生します。
注: 対応するハンドラは onMoved です。
このシグナルは、QtQuick.Controls 2.2 (Qt 5.9) で導入されました。
[since 6.6] wrapped(Dial.WrapDirection direction)
この信号は、ダイヤルが一周して、つまり最大値から最小値へ、あるいはその逆の方向へ移行した際に発せられます。この信号は、wrap がtrue である場合にのみ発せられます。direction 引数は、一周の回転方向を指定するもので、以下のいずれかの値をとります:
| 定数 | 説明 |
|---|---|
Dial.Clockwise | ダイヤルが時計回りに一周する。 |
Dial.CounterClockwise | ダイヤルが反時計回りにループします。 |
注: 対応するハンドラは `onWrapped` です。
このシグナルは Qt 6.6 で導入されました。
メソッドのドキュメント
void decrease()
値をstepSize だけ減少させます。stepSize が定義されていない場合は、0.1 を減少させます。
stepSizeも参照してください 。
void increase()
値をstepSize だけ増やします。stepSize が定義されていない場合は、0.1 を返します。
stepSizeも参照してください 。
© 2026 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.