为Qt文本片段创建鼠标悬停事件侦听器

时间:2015-02-16 11:22:30

标签: javascript c++ qt

是否可以在Qt文本片段上创建鼠标悬停事件列表器,以及如何?

就像在HTML span元素上创建JavaScript onMouseOver事件一样,在C ++中使用Qt可以做同样的事情吗?请演示一个可以改变该文本片段/跨度本身的背景颜色的解决方案。

例如,如果您将此问题的文本加载到文本元素中,那么如何才能确保只有单词" you"将鼠标悬停在它们上方会突出显示?在HTML中,我只是将所有" you" s放入一个span并添加一个JS事件。这可能与Qt应用程序中加载的(HTML)文本有关吗?

1 个答案:

答案 0 :(得分:0)

所以根据标签,我可以假设您需要qml Mouse Area

并且只有当前按下按钮时才会发出默认信号(onEntered / onExited)。因此,即使没有按下鼠标按钮,也需要将hoverEnabled设置为true以发出此信号。

Text{
    id: text1;
    text: qsTr("SOME BIG TEXT")
    font.pixelSize: 24
    color: "black";
    MouseArea {
        id: area;
        anchors.fill: parent;
        hoverEnabled: true
        onEntered: {
            text1.color = "red";
        }
        onExited: {
            text1.color = "black";
        }
    }
}