QMainWindow 在 show() 之后立即关闭

2023-12-01

我是 Qt 新手(主要使用 Objective-C),所以我遇到了可能是新手问题。来自QDialog我尝试打开的窗口QMainWindow像这样:

this->close();
SQLWindow window;
window.receivePath(path); //Path for the .sqlite file
window.show()

QDialog关闭,在几毫秒内我看到了一个新窗口,但它也关闭了。下边是QMainWindow part:

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

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

void SQLWindow::initialSetup() 
{ 
    ui->tableView->setSortingEnabled(true); 
    ui->tableView->setEditTriggers(QAbstractItemView::NoEditTriggers); 
} 

void SQLWindow::receivePath(QString path) 
{ 
   this->openDatabase(path); 
} 

void SQLWindow::openDatabase(QString path) 
{
    //Opening database just fine
}

您的窗口是一个局部变量,它在函数结束时被销毁,因此析构函数将其关闭。 你可以做的是创建SQLWindow在堆上new SQLWindow以及例如使用Qt::WA_DeleteOnClose属性如图所示here.

或者,更好的设计可能是将对话框和窗口创建为局部变量main函数并让 main 函数将路径从对话框传递到SQLWindow,那么你不需要new.

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

QMainWindow 在 show() 之后立即关闭 的相关文章

  • WPF DataGrid 多选

    我读过几篇关于这个主题的文章 但很多都是来自 VS 或框架的早期版本 我想做的是从 dataGrid 中选择多行并将这些行返回到绑定的可观察集合中 我尝试创建一个属性 类型 并将其添加到可观察集合中 它适用于单个记录 但代码永远不会触发多个
  • 如何将 std::string& 转换为 C# 引用字符串

    我正在尝试将 C 函数转换为std string参考C 我的 API 如下所示 void GetStringDemo std string str 理想情况下 我希望在 C 中看到类似的东西 void GetStringDemoWrap r
  • 在模板类中声明模板友元类时出现编译器错误

    我一直在尝试实现我自己的链表类以用于教学目的 我在迭代器声明中指定了 List 类作为友元 但它似乎无法编译 这些是我使用过的 3 个类的接口 Node h define null Node
  • std::list 线程push_back、front、pop_front

    std list 线程安全吗 我假设不是这样 所以我添加了自己的同步机制 我认为我有正确的术语 但我仍然遇到问题 每个函数都由单独的线程调用 Thread1 不能等待 它必须尽可能快 std list
  • C++11 删除重写方法

    Preface 这是一个关于最佳实践的问题 涉及 C 11 中引入的删除运算符的新含义 当应用于覆盖继承父类的虚拟方法的子类时 背景 根据标准 引用的第一个用例是明确禁止调用某些类型的函数 否则转换将是隐式的 例如最新版本第 8 4 3 节
  • 从经典 ASP 调用 .Net C# DLL 方法

    我正在开发一个经典的 asp 项目 该项目需要将字符串发送到 DLL DLL 会将其序列化并发送到 Zebra 热敏打印机 我已经构建了我的 DLL 并使用它注册了regasm其次是 代码库这使得 IIS 能够识别它 虽然我可以设置我的对象
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 如何在 C++ 中标记字符串?

    Java有一个方便的分割方法 String str The quick brown fox String results str split 在 C 中是否有一种简单的方法可以做到这一点 The 增强分词器 http www boost o
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • C# 列表通用扩展方法与非通用扩展方法

    这是一个简单的问题 我希望 集合类中有通用和非通用方法 例如List
  • 在 Unity 中实现 Fur with Shells 技术

    我正在尝试在 Unity 中实现皮毛贝壳技术 http developer download nvidia com SDK 10 5 direct3d Source Fur doc FurShellsAndFins pdf Fins 技术被
  • 使用 C# 中的 CsvHelper 将不同文化的 csv 解析为十进制

    C 中 CsvHelper 解析小数的问题 我创建了一个从 byte 而不是文件获取 csv 文件的类 并且它工作正常 public static List
  • 如何定义一个可结构化绑定的对象的概念?

    我想定义一个concept可以检测类型是否T can be 结构化绑定 or not template
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • C 函数 time() 如何处理秒的小数部分?

    The time 函数将返回自 1970 年以来的秒数 我想知道它如何对返回的秒数进行舍入 例如 对于100 4s 它会返回100还是101 有明确的定义吗 ISO C标准没有说太多 它只说time 回报 该实现对当前日历时间的最佳近似 结
  • C++ 中的 include 和 using 命名空间

    用于使用cout 我需要指定两者 include
  • 为什么 std::uint32_t 与 uint32_t 不同?

    我对 C 有点陌生 我有一个编码作业 很多文件已经完成 但我注意到 VS2012 似乎有以下语句的问题 typedef std uint32 t identifier 不过 似乎将其更改为 typedef uint32 t identifi
  • C++ 中的参考文献

    我偶尔会在 StackOverflow 上看到代码 询问一些涉及函数的重载歧义 例如 void foo int param 我的问题是 为什么会出现这种情况 或者更确切地说 你什么时候会有 对参考的参考 这与普通的旧参考有何不同 我从未在现
  • 类型或命名空间“MyNamespace”不存在等

    我有通常的类型或命名空间名称不存在错误 除了我引用了程序集 using 语句没有显示为不正确 并且我引用的类是公共的 事实上 我在不同的解决方案中引用并使用相同的程序集来执行相同的操作 并且效果很好 顺便说一句 这是VS2010 有人有什么

随机推荐

  • 如何更改 Google 本机文档中的元数据语言

    我可以使用 API Drive 2 0 将本机 Google 文档创建到 Google Drive 但是 我无法更改语言正文文档 我认为 TargetLanguage 和 SourceLanguage 属性有其他目标 并且它们不允许在 SD
  • 如何发送数组作为 (jquery) ajax 请求的一部分

    我尝试发送一个数组作为 ajax 请求的一部分 如下所示 var query in between I add some values to query ajax url MyServlet data query dataType json
  • 使用 null 的方法重载选择

    鉴于此代码 class Overloading extends Object static public void target Object val String chk System out println Object val Sho
  • Joomla 错误:“非法变量 _files 或 _env 或 _get 或 _post 或 _cookie 或 _server 或 _session 或全局变量传递给脚本”

    我在 Joomla 中收到此错误 Illegal variable files or env or get or post or cookie or server or session or globals passed to script
  • 按元组的指定元素对具有元组键的字典进行排序

    我有一个字典列表 字典键是元组 例如 0 5 我想按元组的值对列表进行排序 1 我尝试使用方法列表排序的关键参数 但我不知道要在 lambda 中放入什么 我尝试这样做 key lambda k 1 输入示例 5 9 item 0 4 it
  • JTextField 时间(HH:mm:ss)

    我有一个浮动的特定任务所需的估计时间 以分钟为单位 如何将其放入 JFormattedTextField 中 格式为HH mm ss 对于 Calendar and DateFormat float minutes 100 5f 1 40
  • 如何在Python中使用联合类型? [复制]

    这个问题在这里已经有答案了 我找到了以下代码 def get iterator from config config dict data dict iterator config config dataset iterator iterat
  • Solrj 从 Android 索引文档

    我正在尝试使用 Android 应用程序中的 Solrj 来索引文档 但它似乎不起作用 我关注这个LINK 这是我正在编写的代码 package com example secondapp import android app Activi
  • SQLite数据库错误,无用日志

    我发布了应用程序的更新 但从用户那里收到了大量错误 我无法重新创建它或查明问题 我收到两个错误 java lang IllegalStateException attempt to re open an already closed obj
  • Angular Router - 网址更改但视图未加载

    我刚刚开始调整示例角度 离子选项卡导航应用程序 但遇到了问题 当我点击一个视图中的链接 所有旅程的列表 时 我应该被带到一个屏幕 其中包含有关该特定旅程的详细信息 改编自示例应用程序中的 聊天 然而它并不完全有效 URL 更改为预期的 UR
  • 如何为复杂的计算设置超时?

    我正在写一个像这样的程序 results for i in range 30 x 4 5 i results append x 然而 当i变得更大 结果并没有太大而无法提高 OverflowError 这将需要一个long计算结果的时间 所
  • 停止函数写入标准输出

    我的代码中有这一行 writer cv CreateVideoWriter video avi cv CV FOURCC X V I D 30 480 800 1 哪些输出可以对此进行控制台 Output 0 avi to video av
  • 执行 cx_Freeze 结果时的循环依赖

    我面临着一个非常简单的重现问题 但我根本不明白发生了什么 我尝试编译一个Python脚本 它使用fastparquet依赖关系 与 cx Freeze 当我直接启动它时 我能够执行我的脚本python script py 但是如果我用 cx
  • C# MySQL 连接过多

    我试着跑SELECT在桌子上MySql我收到此错误 Server Error in MyApp Application Too many connections Description An unhandled exception occu
  • 逐字突出显示表格中的文本,而不是整个范围

    我想为 html 表创建过滤器 例如网站 ctrl f 但当前代码突出显示搜索输入单个单词时的所有范围 无需任何插件 就像下图一样 Html表格过滤 search keyup function console log this val if
  • 如何使用 FFMpeg -timestamp 语法

    Hi All ffMpeg timstamp 选项是否像上图一样工作 07 21 54 07 07 05 黑盒容器中的白色文本 在 ubuntu 12 04 中 像这样输入执行 ffmpeg y f video4linux2 s vga r
  • 在 Excel 中每 X 行插入行

    我有一长串代码 例如 008 45 等 需要多行文本来解释它们 我有代码列表 我想知道如何自动插入一行 例如第五行 下面的例子 1 2 3 4 5 6 7 8 9 10 100 每五行我想插入给定数量的我选择的行 我怎样才能做到这一点 谢谢
  • 如何将 Java 8 LocalDateTime 与 JPA 和 Hibernate 结合使用

    我有以下类描述片段 Column name invalidate token date Temporal TemporalType TIMESTAMP private LocalDateTime invalidateTokenDate 此代
  • 使用 PHP 脚本运行 shell 命令

    我正在使用 CodeIgniter 创建应用程序 但无法使用 PHP 脚本运行 Linux 命令 如何运行终端命令 我试过了shell exec and exec 但是在使用 CI 时两者都不起作用 这取决于您的服务器配置 如果这些功能被禁
  • QMainWindow 在 show() 之后立即关闭

    我是 Qt 新手 主要使用 Objective C 所以我遇到了可能是新手问题 来自QDialog我尝试打开的窗口QMainWindow像这样 this gt close SQLWindow window window receivePat