Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Почему в TextFild(qml), если установлена маска, курсор не правильно меняет позицию?



  • В qml TextField если стоит inputMask -- курсор (при вводе текста) перемещается на одну позицию , а должен в зависимости от маски.
    Эта проблема проявляется на андроид. На десктопе с физической клавиатурой поведение правильное
    alt text

    
    
    import QtQuick 2.14
    import QtQuick.Window 2.14
    import QtQuick.Controls 2.12
    
    Window {
        visible: true
        width: 640
        height: 480
        title: qsTr("Hello World")
        Item {
            anchors.fill: parent
            Column{
                spacing: 10
    
              anchors.horizontalCenter: parent.horizontalCenter
              anchors.top: parent.top
              anchors.topMargin: 20
    
    
                TextField{
                    id:  text_field
                   // inputMethodHints: Qt.ImhNoPredictiveText|Qt.ImhSensitiveData | Qt.ImhDigitsOnly
                    inputMethodHints: Qt.ImhDigitsOnly
                    inputMask: "+7(###)-###-####"
                    onTextChanged: {
                        console.log("text changed")
                    }
    
                    Keys.onPressed: {
                        console.log("keys presed "+ event.key)
                        text_event.text= "keys presed "+ event.key
    
    
                    }
                    onFocusChanged: {
                        if(focus){
                            cursorPosition=0
                        }
                    }
                }
                Text {
                    text: text_field.text
                }
                Text {
                    id: text_event
    
                }
            }
        }
    
    }
    
    

    Qt 5.14.1


Log in to reply