QML SpinBox — как включить ввод чисел, когда минимальное значение велико?

Если вы создаете SpinBox с минимальным значением 100, вам будет сложно вручную вводить числа, потому что проверка происходит по мере ввода, поэтому любое временное значение в поле редактирования, выходящее за границы диапазона, запрещено.

Возьмите SpinBox, поддерживающий диапазон 100-500:

import QtQuick 2.4
import QtQuick.Controls 1.3
import QtQuick.Window 2.2
import QtQuick.Dialogs 1.2

ApplicationWindow {
    width: 300;  height: 200

    SpinBox {
        anchors.centerIn: parent
        minimumValue: 100; maximumValue: 500
    }
}

Если вы щелкнете в поле ввода, будет выбрано все значение, и ввод любой цифровой клавиши заменит текущее значение одной цифрой, которая меньше 100 и, следовательно, предотвращается. Это делает любое минимальное значение выше 1 бесполезным.

Но мне очень нравится все остальное поведение, которое я получаю от SpinBox. Какие-либо предложения?


person pixelgrease    schedule 17.02.2015    source источник
comment
Предполагается, что это ошибка, и что она должна быть исправлена ​​в следующих версиях 5.4. 1 выпуск. :) Не стесняйтесь попробовать доступные снимки здесь.   -  person BaCaRoZzo    schedule 18.02.2015
comment
@BaCaRoZzo - спасибо за ссылку на дефект! Ты прав; Я больше не могу воспроизводить эту проблему после обновления Qt.   -  person pixelgrease    schedule 05.11.2015


Ответы (1)


BaCaRoZzo ответил на это: это Дефект QML, который был устранен в Qt 5.4.1 и больше не может быть воспроизведен.

person pixelgrease    schedule 05.11.2015