如何制作一个“真正透明”的光标窗口,最好是在纯 QML 上? (Qt 5.7)

2023-12-06

“真正的透明”解释(图片,76kb).

在那张图片上应用窗口有一个视觉上透明的层。但实际上光标并没有走到后面的窗口应用窗口(在本例中为 QT Creator)。

如果添加(取消注释)“Qt.WindowTransparentForInput”标志,则可以实现“真正的透明度”,但按钮不再可用(我知道,这是显而易见的)。

我尝试了具有类似含义的各种标志(来自文档),但没有找到有效的组合 - 当光标位于窗口边框内时,光标保持在“默认”状态(必须处于“文本”状态,因为是其下方的文字)。

有人遇到过类似的问题吗?您找到解决方案了吗?谢谢!

来自图像的代码,其他项目文件保持不变(Qt Quick Controls 2 应用程序):

import QtQuick 2.7
import QtQuick.Controls 1.5

ApplicationWindow {
    visible: true
    width: 320
    height: 240
    x: 400
    y: 210
    color: "transparent"
    flags: Qt.Widget | Qt.FramelessWindowHint //| Qt.WindowTransparentForInput
    //| Qt.WA_TranslucentBackground //| Qt.WA_NoSystemBackground
    //| Qt.WA_NoBackground //| Qt.WA_MouseNoMask

    Button {
        x: ApplicationWindow.width - width
        text: "Right Top Window Corner"
    }
    Button {
        y: ApplicationWindow.height - height
        text: "Left Bottom Window Corner"
    }
}

一种解决方案是创建 3 个窗口,一个用于透明区域,一个用于每个按钮。

import QtQuick 2.4
import QtQuick.Controls 1.5
import QtQuick.Window 2.0

ApplicationWindow {
    id: app
    visible: true
    width: 320
    height: 240
    x: 400
    y: 210
    color: "transparent"
    flags: Qt.Widget | Qt.FramelessWindowHint | Qt.WindowTransparentForInput | Qt.WindowStaysOnTopHint

    Window {
        visible: true
        flags: Qt.FramelessWindowHint | Qt.WindowStaysOnTopHint
        x: app.width - width
        height: rightButton.implicitHeight
        Button {
            id: rightButton
            text: "Right Top Window Corner"
        }
    }
    Window {
        visible: true
        flags: Qt.FramelessWindowHint | Qt.WindowStaysOnTopHint
        y: app.height - height
        height: leftButton.implicitHeight
        Button {
            id: leftButton
            text: "Left Bottom Window Corner"
        }
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何制作一个“真正透明”的光标窗口,最好是在纯 QML 上? (Qt 5.7) 的相关文章

随机推荐

  • 如何从 gridview 页脚 C# 中的文本框中获取值?

    就像标题中一样 如何处理按钮单击 GridView 页脚中的哪个按钮也 文件 aspx 看起来像这样
  • 获取可执行文件的服务路径

    考虑下图 我写了下面的代码应该得到可执行文件的路径服务的一部分 如图中突出显示 基本上我下面给出的代码片段将写入另一个 cpp 文件中 该文件将生成lpa exe并且应该作为服务运行 我试过获取模块文件名如果可执行文件 lpa exe 正常
  • Mapstruct - 如何在生成的映射器类中注入 spring 依赖项

    我需要在生成的映射器实现中注入一个 spring 服务类 以便我可以通过以下方式使用它 Mapping target x expression java myservice findById id 这适用于 Mapstruct 1 0 吗
  • Kotlin 语言在运行时获取类

    假设我们有以下内容 val person Bill 有人可以解释一下这两者之间的区别吗 val kClass1 person javaClass kotlin vs val kClass2 person class 我什么时候应该打电话给其
  • 如何验证电话号码和 -

    用于验证电话号码并包含 0 9 6 14 0 9 我必须通过 验证电话号码 例如 333 333 3333 这是有效号码 如何使用 自定义有效的正则表达式到电话号码 好吧 这取决于你想有多严格 这个正则表达式似乎并不是特别严格 这个正则表达
  • 如何使用新的(v3)Google Drive API 导出特定工作表

    我正在尝试从电子表格 在 Google 云端硬盘上 下载特定的工作表 但无法找到执行此操作的方法 我正在使用Python客户端API库 v3 并在export media 函数中传递file id和mimeType 如下所示 request
  • html/html5中自定义的输入文本框

    Actually I want to implement a text box as shown in the figure 我希望用户应该能够在所需的空间中输入数字 请注意 它是透明的 以便背景可见 涉及 html5 canvas 的解决
  • Phonegap iOS Safari 调试工作流程

    我一直在测试 Phonegap Build 使用类似的工作流程 如下所述 教程 开发 PhoneGap 应用程序 我可以构建并部署到我的设备 但无法通过 Safari 进行远程调试 如此处答案中所述 你能看出Phonegap iOS应用程序
  • 如何将 JSON 数据加载到 Highchart?

    my Json看起来像这样 1332879360000 0 300 0 1332797760000 0 353 0 1332799320000 0 358 0 1332879780000 0 302 0 1332800160000 0 35
  • 使用 Mockito 通过反射来模拟方法

    我们使用 Mock Factory 为我们的开发人员提供关于模拟功能的最大可能舒适度 同时减少对 mockito 本身的了解 为此 我们的 Mock Factory 提供了一种方法来创建模拟 给定类名 方法名 通过正则表达式 和给定的返回值
  • 如何制作一堆可检测手势的自定义绘制形状

    我设法用以下方法制作了这 3 个奇怪的形状CustomPainter the 滑动按钮形状 平移按钮形状 and 倾斜按钮形状分别 我想让它们可检测到 所以我添加了GestureDetector但它不能正常工作 这就是我堆叠自定义绘制形状的
  • 如何使用 Apache POI 提取 docx(Word 2007 以上)

    你好 我正在使用 Apache POI 3 6 我已经创建了一些代码 XWPFDocument doc new XWPFDocument new FileInputStream file wordxExtractor new XWPFWor
  • 为什么 Google 地图在我的 Android 应用程序中显示空白屏幕?

    我的 Android 应用程序中有 Google 地图 我通过选择新的 Google 地图活动并将密钥粘贴到 Android Studio 中来添加它 它在我的 Android 手机 Lenovo K5 Note 中运行良好 但当我将项目复
  • 如何将分号附加到 ArrayList 中的每个元素[重复]

    这个问题在这里已经有答案了 我目前正在尝试在 ArrayList 中每个元素的末尾附加一个分号 代码 ArrayList
  • 如何在flutter中执行VoidCallback

    我正在尝试测试VoidCallback所以我创建了主文件 它有一个从小部件中的平面按钮调用的函数 该函数位于一个单独的文件中 但不起作用 主程序 dart import package flutter material dart impor
  • 为应用程序配置 SSL Heroku HTTPS

    您好 我目前正在阅读下面的教程 将 ssl 添加到我的 heroku 应用程序中 https gist github com shripadk 552554 所以今天 我买了一个域名 将 cname 设置为指向我的 heroku 应用程序
  • 如何使用 Jakarta POI 读取 ms word 文件的内容

    我已包含 jakarta poi 1 5 1 final 20020615 jar 文件以从 ms word 读取内容 我无法做到这一点 任何人都可以帮助我吗 Here is 快速指南
  • 在 R Shiny 中触发反应流的键盘快捷键?

    是否有可能 比如说 F7 or Q在 Shiny 应用程序 在 Windows 中 中触发反应流 这个问题提供了用于通过键盘输入交替选项卡的代码 但我对启动反应流感兴趣 例如 每次用户按下时都会 触发 按钮Q在键盘中 这是一个基于的示例这个
  • 无法抑制弃用警告

    在我的 Django 应用程序中 当我导入第三方库时 我在控制台中收到此警告 imp 模块已被弃用 取而代之的是 importlib 有关其他用途 请参阅模块的文档 但是 如果我在 Python shell 中进行导入 那么一切都可以 我想
  • 如何制作一个“真正透明”的光标窗口,最好是在纯 QML 上? (Qt 5.7)

    真正的透明 解释 图片 76kb 在那张图片上应用窗口有一个视觉上透明的层 但实际上光标并没有走到后面的窗口应用窗口 在本例中为 QT Creator 如果添加 取消注释 Qt WindowTransparentForInput 标志 则可