このページでは

DoubleValidator QML Type

整数以外の数値用のバリデータ定義。詳細...

Import Statement: import QtQuick
In C++: QDoubleValidator

プロパティ

詳細な説明

DoubleValidator 型は、整数以外の数値に対するバリデータを提供します。

  • 受け入れられる入力:有効な範囲内であり、正しい形式の double 型を含む入力は受け入れられます。
  • 受け入れられるが不正な入力:有効範囲外または形式が正しくない(例えば、小数点以下の桁数が多すぎる、または空であるなど)double 型が含まれている場合、入力は受け入れられますが、不正とみなされます。
  • 拒否される入力: double 型でない入力は拒否されます。

注: 有効範囲が正の double のみで構成されている場合 (例:0.0 から 100.0)、入力が負の double である場合は拒否されます。notation がDoubleValidator.StandardNotation に設定されており、入力の小数点以下の桁数が有効範囲内の double が持つことができる最大桁数を超えている場合も、入力は拒否されます。notation がDoubleValidator.ScientificNotation に設定されており、入力が有効範囲外の場合、入力は受け入れられますが、無効となります。指数を変更することで、その値が有効になる可能性があります。

以下の例は、ユーザーが指定された範囲内の double 型を入力したかどうかを確認するために DoubleValidator を使用するTextInput オブジェクトを示しており、無効な入力がある場合はテキストの色を変更して強調表示しています。

import QtQuick

TextInput {
    focus: true
    validator: DoubleValidator {
        bottom: 0.00
        top: 100.00
        decimals: 2
        notation: DoubleValidator.StandardNotation
    }
    onAcceptableInputChanged:
        color = acceptableInput ? "black" : "red";
}

「 IntValidator 」、「RegularExpressionValidator 」、および「入力テキストの検証」も参照してください 。

プロパティのドキュメント

bottom : real

このプロパティには、バリデータの最小許容値が格納されます。デフォルトでは、このプロパティの値は -infinity です。

decimals : int

このプロパティには、バリデータが扱う小数点以下の最大桁数が格納されます。デフォルトでは、このプロパティの値は 1000 です。

locale : string

このプロパティには、数値の解釈に使用されるロケールの名前が格納されます。

Qt.locale()も参照してください 。

notation : enumeration

このプロパティは、文字列が数値をどのように表現できるかを示す表記を保持します。

このプロパティの取り得る値は次のとおりです:

定数説明
DoubleValidator.StandardNotation符号の有無は任意の10進数のみ(例:-0.015 )
DoubleValidator.ScientificNotation(デフォルト) 記述された数値には指数部が含まれる場合がある(例:1.5E-2 )

top : real

このプロパティには、バリデータが許容する最大値が格納されます。デフォルトでは、このプロパティの値は無限大です。

© 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.