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

标签 javascript c++ qt

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

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

例如,如果您将此问题的文本加载到一个文本元素中,您如何确保在将鼠标悬停在“您”上时只突出显示这些词?在 HTML 中,我只是将所有“你”放入一个范围内并添加一个 JS 事件。这也可能与 Qt 应用程序中加载的 (HTML) 文本有关吗?

最佳答案

所以根据标签,我可以假设你需要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";
        }
    }
}

关于javascript - 为 Qt 文本片段创建鼠标悬停事件监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28540319/

相关文章:

python - PyQt5 - 正确动态调整组件大小和布局组件

javascript - 如何使用 Js 文档记录柯里化(Currying)函数

javascript - 从 iframe 内容到对象内容的 jquery 选择器

javascript - == null 和 === null 有什么区别?

c++ - 如何导出包含私有(private)结构 vector 的类

c++ - 如何在 ComboBox 的编辑字段中创建一个按钮?

c++ - MATLAB中如何调用命令程序

javascript - jQuery 自动完成功能不向 AJAX 发送数据

QThread 和 C++11 lambda : wait for finished

c++ - 如何使用 QPainter 绘画?