Qt TableView-如何在不丢失styleData.selected的情况下获取悬停行

Qt TableView-如何在不丢失styleData.selected的情况下获取悬停行,qt,qml,tableview,Qt,Qml,Tableview,我需要突出显示表视图中悬停的行。 默认情况下,没有悬停效果。 我可以在rowDelegate内部使用MouseArea来实现这一点。 但这将禁用TableView中的选择机制 表示styleData。选定的将不再工作。 这意味着我必须为选择机制(包括扩展选择)编写每一行代码 如何解决这个问题?我只需要一个小属性,比如styleData.hovered像handle组件中的ScrollViewStyle 这个问题已经在三年两个月前被提出了。不幸地没有回答 更新 rowDelegate:

我需要突出显示
表视图中悬停的行
。 默认情况下,没有悬停效果。 我可以在
rowDelegate
内部使用
MouseArea
来实现这一点。 但这将禁用
TableView
中的选择机制

表示
styleData。选定的
将不再工作。
这意味着我必须为选择机制(包括扩展选择)编写每一行代码

如何解决这个问题?我只需要一个小属性,比如
styleData.hovered
handle
组件中的
ScrollViewStyle

这个问题已经在三年两个月前被提出了。不幸地没有回答

更新

    rowDelegate: Rectangle {
            height: 30

            property color selectedColor: styleData.hasActiveFocus ? "gray" : "lightgray"
            color: styleData.selected ? selectedColor : mouse_area.hovered?"black":backgroundColor

            MouseArea{
                id:mouse_area
                property bool hovered:false
                propagateComposedEvents : false

                hoverEnabled: true
                anchors.fill: parent

                onEntered: {
                    hovered=true
                }

                onExited: {
                    hovered=false;
                }
            }
        }
添加:

MouseArea {
    // ...
    onPressed: mouse.accepted = false
}

将鼠标信号传播到
表视图
并保持其选择行为。

我尝试将MouseArea.propagateComposedEvents设置为0。但它仍然不起作用。请提供。顺便说一句,如果您使用
QtQuick.Controls 1.4
,您必须手动设置选择,如果您提供自定义行委托。我使用的是
QtQuick.Controls 1.4
TableView
QtQuick 2.13
TableView
我想没有那么有用。谢谢您提供完整的代码。它帮助了我,谢谢。它工作得很好。每个想要定制TableView的人都应该知道这一点,这将引入另一个问题。现在我不再能够为
rowDelegate
获取
单击的事件
双击的事件。幸运的是,我在这里找到了答案