Qt 5.5 - 触摸屏事件仅在初始(第一个)窗口中工作

2024-01-04

我已经设置了一个基本的 Qt-Widgets-Application(Qt 5.5 社区),其中包含一个简单的 QWidget“MainWindow”和一个附加的 QWidget“SettingsScreen”。

在“MainWindow”中,触摸屏事件(由操作系统处理)按预期工作,但打开“SettingsScreen”后,所有触摸事件都在桌面上执行,直到我使用鼠标或键盘关闭“SettingsScreen”。

环境:

  • Ubuntu 工作室 14.04.03
  • Qt 5.5 开源版

主窗口.h

#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QWidget>
#include <settingsscreen.h>

namespace Ui {
class MainWindow;
}

class MainWindow : public QWidget
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:

    void on_btnExit_clicked();

    void on_btnSettings_clicked();

private:
    Ui::MainWindow *ui;
    SettingsScreen *wSettingsScreen;
};

#endif // MAINWINDOW_H

主窗口.cpp

#include "mainwindow.h"
#include "ui_mainwindow.h"
#include "settingsscreen.h"
#include "ui_settingsscreen.h"

MainWindow::MainWindow(QWidget *parent) : QWidget(parent),
ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}

MainWindow::~MainWindow()
{
    delete ui;
}

void MainWindow::on_btnExit_clicked()
{
    this->close();
}

void MainWindow::on_btnSettings_clicked()
{
    wSettingsScreen = new SettingsScreen(parentWidget());
    wSettingsScreen->show();
}

设置屏幕.h

#ifndef SETTINGSSCREEN_H
#define SETTINGSSCREEN_H

#include <QWidget>

namespace Ui {
class SettingsScreen;
}

class SettingsScreen : public QWidget
{
    Q_OBJECT

public:
    explicit SettingsScreen(QWidget *parent = 0);
    ~SettingsScreen();

private slots:
    void on_pushButton_clicked();

    void on_btnBack_clicked();

private:
    Ui::SettingsScreen *ui;
};

#endif // SETTINGSSCREEN_H

设置屏幕.cpp

#include "settingsscreen.h"
#include "ui_settingsscreen.h"

SettingsScreen::SettingsScreen(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::SettingsScreen)
{
    ui->setupUi(this);
}

SettingsScreen::~SettingsScreen()
{
    delete ui;
}

void SettingsScreen::on_btnBack_clicked()
{
    this->close();
}

我刚刚开始使用 Qt 进行开发,所以如果我遗漏了一些重要的东西,请原谅我:)

任何帮助将不胜感激!

先感谢您!


实际上,QMainwindow 或应用程序的任何基本小部件都能够正确地将未处理的触摸屏事件合成为鼠标事件。因此,每当您创建对话框/小部件时,请确保将 Mainwindow 设置为父窗口,并在子小部件的构造函数中使用 setParent(parent)。即使我也面临这种问题,这对我有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Qt 5.5 - 触摸屏事件仅在初始(第一个)窗口中工作 的相关文章

  • .NET Windows 服务中调用 C# 的 wait 的 I/O 回调是否可以不阻塞?

    我知道在 ASP NET 中 当使用 wait 时工作线程会返回到池中 而 I O 发生在后台 这对于可扩展性非常有用 我的 Windows 服务是一个套接字服务器 它使用 Begin End 样式的异步套接字 I O 混合我的魔法 我知道
  • 从 .Net 将简单数据插入 Excel 文件的最简单方法

    我有一个 Excel 文件 大约有 10 列和 1 20 行 我需要插入 1 20 行包含各种数据元素 我想知道是否有一种方法可以将一些标签放入 Excel 文件中 以便可以找到并替换它们 将列标记为 名称 的东西 这样我就可以在代码中说
  • C++ - 模板专业化和部分专业化

    我一直在互联网和 stackoverflow 上寻找具体的答案 但我似乎找不到 我必须创建一个通用类 然后实现特定的功能 我的具体说明是 您需要使用模板表达式参数以及模板类专业化和部分专业化 我有一个模板类 template
  • 为什么 LinkedList 通常比 List 慢?

    我开始在我的一些 C 算法中使用一些 LinkedList 而不是列表 希望能够加快速度 然而 我注意到他们只是感觉更慢 像任何优秀的开发人员一样 我认为我应该尽职调查并验证我的感受 所以我决定对一些简单的循环进行基准测试 我认为用一些随机
  • 我可以告诉 Linux 不要交换特定进程的内存吗?

    有没有办法告诉 Linux 它不应该将特定进程的内存交换到磁盘 它是一个 Java 应用程序 所以理想情况下我希望有一种方法可以从命令行执行此操作 我知道您可以将全局交换性设置为 0 但这明智吗 您可以通过以下方式执行此操作姆洛克尔 2 h
  • TestMethod:异步任务 TestSth() 不适用于 .NET 4.0

    我正在尝试使用 NET 4 0 BCL Async 和 MsTest 运行异步测试方法 看来这个设置不能处理 测试方法 异步Task测试Sth 由于测试用例资源管理器中缺少条目 将签名更改为异步后void 我可以运行测试用例 但结果错误 根
  • 当我尝试使用 AVX 功能时,Clang 生成错误

    我使用的是 Windows 10 使用 Clang 版本 5 最近安装 当我编译以下内容时 define AVX define AVX2 include
  • C++ 析构函数:何时释放内存?

    如果我删除一个导致其析构函数被调用的对象 那么内存是在析构函数完成函数中的任何操作之前还是之后被释放 仅当最小派生类子对象被销毁后才会释放内存 所以如果你有 class Base class Derived public Base publ
  • ASP MVC 5 - 403 customError 不起作用

    我正在尝试为我的应用程序创建自定义错误页面 它在大部分情况下都有效 但不适用于403 errors 我的网络配置
  • 使用对象列表构建树

    我有一个带有属性 id 和parent id 的对象列表 我想建造一棵树来连接那些孩子和父母 1 个父对象可以有多个子对象 并且有一个对象将成为所有对象的祖先 实现该功能最快的算法是什么 我使用 C 作为编程语言 但其他语言也可以 像这样的
  • 在非指针变量和类成员上放置 new

    考虑以下示例 include
  • 如何使用 C# 代码使用超链接的 onClick 事件?

    我正在尝试为页面中的超链接添加条件 而不是仅仅使用特定的链接 例如 a href help Tutorial html Tutorial a 我想为不同的用户显示不同的页面 例如 如果用户以管理员身份登录 他们将看到与普通用户不同的链接 我
  • 函数模板重载解析期间的 MSVC 与 Clang/GCC 错误,其中一个函数模板包含参数包

    当我使用参数包时 我注意到这样一种情况 如下所示 在 gcc 和 clang 中编译得很好 但在 msvc 中却不行 template
  • fscanf 和 EOF 中的否定扫描集

    我的文件中有一个以逗号分隔的字符串列表 姓名 1 姓名 2 姓名 3 我想跳过所有逗号来阅读这些名字 我写了以下循环 while true if fscanf file my string 1 break 然而 它总是比预期多执行一次 给定
  • C# - 命名空间内的类型声明

    在命名空间内而不是在类中声明类型的可能用途是什么 For ex namespace Test public delegate void Ispossible 这是有效的并且不会产生任何编译错误 但我无法想象为什么我们会以这种方式声明它而不是
  • Unity 2.0 和处理 IDisposable 类型(特别是使用 PerThreadLifetimeManager)

    我知道类似的问题被问过好几次 例如 here https stackoverflow com questions 987761 how do you reconcile idisposable and ioc here https stac
  • 向每个收件人发送一封包含不同内容的电子邮件(使用抄送字段)

    在你因为这个问题 毫无意义 和 不可能 而驳回之前 请听我说完 问题 我们在使用我们的系统发送的每封电子邮件中实施跟踪像素 即具有唯一 URL 的可下载 GIF 文件 这有助于我们跟踪电子邮件的打开情况 问题是 当我们抄送一些收件人时 跟踪
  • 编译器什么时候内联函数?

    在 C 中 函数仅在显式声明时才内联inline 或在头文件中定义 或者编译器是否允许内联函数 因为他们认为合适 The inline关键字实际上只是告诉链接器 或告诉编译器告诉链接器 同一函数的多个相同定义不是错误 如果您想在标头中定义函
  • C# 中成员访问中的问号是什么意思?

    有人可以向我解释一下以下代码中会员访问中的问号是什么意思吗 它是标准 C 的一部分吗 尝试在 Xamarin Studio 中编译此文件时出现解析错误 this AnalyzerLoadFailed Invoke this new Anal
  • 如何获取通过网络驱动器访问的文件的 UNC 路径?

    我正在 VC 中开发一个应用程序 其中网络驱动器用于访问文件 驱动器由用户手动分配 然后在应用程序中选择驱动器 这会导致驱动器并不总是映射到相同的服务器 我该如何获取此类文件的 UNC 路径 这主要是为了识别目的 这是我用来将普通路径转换为

随机推荐

  • Cordova 5.1.1 闪屏不工作

    我正在尝试让闪屏在我的 Android 设备 Redmi 1S Android 版本 4 4 4 KTU84P 上工作 该应用程序在我的设备上运行良好 但未出现启动画面 启动画面图像被复制并重命名为 screen png 到相应的 plat
  • 在 OpenAPI / Swagger 文件中声明日期的正确方法是什么?

    在 swagger 文件对象中声明日期的正确方法是什么 我认为是 startDate type string description Start date example 2017 01 01 format date 但我看到很多这样的声明
  • 如何使用Python将HTML代码复制到剪贴板?

    我正在尝试制作一个简单的脚本 在 Windows 10 上使用 python 将自定义文本超链接 示例 FakeSite com 复制到剪贴板 并且在粘贴时仍然将其识别为 HTML 与在 Microsoft Word 中复制自定义文本超链接
  • Android 在托管热点时查找设备的 IP 地址

    当设备托管热点时 我需要找到设备的 IP 地址 到目前为止我已经使用过这段代码 if is using Hotspot for Enumeration
  • 通过引入 T 常量将 Expression> 转换为 Expression>

    我有一个格式为的表达式Expression
  • Crontab 突然停止在服务器上工作?

    我在 Linux 平台上的服务器上设置了一些 crontab 在那 2 天之前 所有 cron 都在运行 我不知道 crontab 发生了什么 它们现在不工作 所有 cron 之前都在运行 之后我添加了一个新的 crontab 它们没有运行
  • HttpWebRequest 对象的诊断转储

    有没有什么好方法 除了繁琐地查询每个属性之外 在 C 中为 HttpWebRequest 构建诊断转储字符串 对于简单的对象 人们可以使用new JObject theObject 但这不适用于 HttpWebRequest 并且toStr
  • 使用 url 创建 yii2 动态页面:www.example.com/pageName

    在我的系统中 用户需要有他们的个人资料页面 我要求这些页面将显示在 url 中 如下所示 www example com John Doe www example com Mary Smith 如何在 yii2 中实现这些 URL 这些 J
  • 使用VBA获取word中的所有交叉引用

    我有一个相当大的 Word 文档 gt 400 页 其中有很多标题的交叉引用 到目前为止 我一直引用标题的标题 但现在我想更改它并引用标题所在的页面 我没有通过 GUI 找到解决方案 当然 手动处理除外 所以我正在考虑编写一些 VBA 不幸
  • XPATH获取text_1和text_2之间的所有节点

    我有这样的 HTML div text1 a link 1 a a link 2 a text2 a link 3 a text3 div 我想获取之间的所有节点text1 and text2 问题是没有p or span标签 只有纯文本
  • Google App Engine 在处理信号后终止:术语

    我有一个应用程序部署为 GCP 上的应用程序引擎 它调用 API 创建 Bytes IO 流并将数据上传到云存储 有 4 个文件 大约 44mb 需要上传 文件是 URL 列表 然后将其提供给数据流 但这并不重要 一开始 我为每个文件创建了
  • 带有负秒的奇怪 mktime 逻辑

    我一直在使用 mktime localtime 进行时间管理 包括一些关于日期 时间的繁重算术 当向 mktime 提供包含负值的 struct tm 时 我注意到一些非常奇怪的事情 采取下面的代码 2013 年 11 月 3 日 洛杉矶的
  • 如何在C中分配和释放对齐内存

    如何分配与 C 中特定边界 例如缓存行边界 对齐的内存 我正在寻找类似 malloc free 的实现 理想情况下应尽可能可移植 至少在 32 位和 64 位架构之间 编辑添加 换句话说 我正在寻找一些行为类似的东西 现在已经过时了 mem
  • 在 R / Rmarkdown 中同步两个传单地图

    JS 传单允许需要同步的两个地图 https github com turban Leaflet Sync 查看同步传单地图示例here http blog thematicmapping org 2013 06 creating sync
  • 在同时活动的多个进程中更新 Java 中的数据

    我正在创建一个带有传感器的令牌环 其中每个传感器都是一个独立的进程 当我启动传感器时 它与网关通信并获取系统上已有的实际传感器的列表 问题是 每次我开始一个新进程时 我希望每个现有的传感器都能获取更新的列表 以便了解其他传感器已被添加 并且
  • 如何制作无限分页的UICollectionView?

    我有一个包含 6 页且启用分页的 UICollectionView 和一个 UIPageControl 我想要的是 当我来到最后一页时 如果我向右拖动 UICollectionView 会从第一页无缝地重新加载 void scrollVie
  • VS 2017 的 .net Core Webpack 发布失败

    我正在尝试将 net Core Angular 4 项目从 Visual Studio 发布到 Azure 在发布过程中 我收到以下错误 ERROR in gendir angular tree component dist compone
  • 求和与分组

    我有一个如下所示的数据框 全部控股基金 BrokerBestRate notional current DistanceBestRate 0 CITI 7 859426e 05 0 023194 1 WFPBS 3 609674e 06 0
  • 如何避免 Observable 中超出最大调用堆栈大小?

    我已经过滤了列表 public filteredEvents new BehaviorSubject 以及反转属性的方法checked export并将更改推回 public checkAll void this filteredEvent
  • Qt 5.5 - 触摸屏事件仅在初始(第一个)窗口中工作

    我已经设置了一个基本的 Qt Widgets Application Qt 5 5 社区 其中包含一个简单的 QWidget MainWindow 和一个附加的 QWidget SettingsScreen 在 MainWindow 中 触