在QML中单击另一个SpinBox的按钮时,如何使SpinBox失去焦点

时间:2019-01-28 11:18:54

标签: qt qml qtquickcontrols2

我遇到一个特定的问题,我单击SpinBox中间的文本并获得焦点,但是此后我转到另一个SpinBox,然后单击{{1 }}或-,当我这样做时,我希望将焦点从上一个+移到新的焦点,以假定该值。

作为示例,假设我单击顶部的SpinBox: enter image description here

现在,我点击底部SpinBox上的+按钮,这样做是为了让我专注于底部SpinBox

https://ui-router.github.io/ng1/docs/1.0.0-rc.1/classes/transition.transition-1.html

我在下面提供SpinBox的代码:

main.qml

这怎么办?

1 个答案:

答案 0 :(得分:1)

您可以使用focusPolicy

import QtQuick 2.0
import QtQuick.Controls 2.0

ApplicationWindow {
    id: window
    height: 200
    width: 400
    visible: true

    Column{
        spacing: 10

        SpinBox {
            width: 100
            height: 30
            editable: true
        }
        SpinBox {
            width: 100
            height: 30
            editable: true
            focusPolicy: Qt.ClickFocus // or Qt.StrongFocus
        }
    }
}

Qt.ClickFocus将在单击时集中于控件上,Qt.TabFocus代表标签,Qt.WheelFocus代表滚轮,Qt.StrongFocus代表所有三个。