TextArea光标形状与其他项重叠

时间:2017-05-17 11:42:41

标签: c++ qt qml

我有一个TextArea和弹出窗口或其他重叠的项目。但是当我指向弹出窗口时,光标形状不会改变。当我指向重叠的项目时,我需要光标变为默认值。

Screenshot

代码:

import QtQuick 2.7
import QtQuick.Controls 2.1

ApplicationWindow {
    id: root
    visible: true
    width: 800
    height: 600

    Component.onCompleted: pop.open()

    TextArea {
        width: 800
        height: 600
    }

    Popup {
        id: pop
        Rectangle {
        color: "red"
        width: 100
        height: 100
        }

        MouseArea {
            anchors.fill: parent
        }
    }
} 

2 个答案:

答案 0 :(得分:0)

TextArea包含MouseArea,用于设置不同的光标形状 光标形状始终由最顶层的MouseArea定义。因此,解决方法是在重叠MouseArea中添加Item以重置此区域的光标形状。

import QtQuick 2.7
import QtQuick.Controls 1.4

ApplicationWindow {
    id: root
    visible: true
    width: 800
    height: 600


    TextArea {
        width: 800
        height: 600
    }

    Rectangle {
        color: 'red'
        width: 100
        height: 100
        x: 100
        y: 50

        MouseArea { // This resets the cursor shape, if the cursor hovers over the Rectangle
            anchors.fill: parent
        }
    }
}

答案 1 :(得分:-1)

问题已在Qt 5.9中修复。 感谢jpnurmi