Qt: 主窗口->show();不显示主窗口

2024-06-29

在下面的代码中,我创建一个窗口,调用window.show(),但窗口直到之后才显示window->iterateSolution()叫做。几乎就好像,app.exec()是显示窗口的函数。我对 Qt 很陌生,所以我不知道发生了什么。

#include <QtGui/QApplication>
#include <mainWindow.h>
#include <Cube.h>

mainWindow * newWindow;

int main(int argc, char *argv[]) {
    // initialize resources, if needed
    // Q_INIT_RESOURCE(resfile);

    QApplication app(argc, argv);
    newWindow = new mainWindow;
    newWindow->show();

    QString initialState = "YWOBYYBYYGRRGRRBWWYOOYGGRGGBBGYOOYOOWRRBBRBBWGOOGWWRWW";

    /* Construct cube, set state, and solve */
    Cube * cube = new Cube(initialState);
    QString solution = cube->solve();
    delete cube;
    newWindow->iterateSolution(solution);

    // create and show your widgets here

    return app.exec();
}

这正是正在发生的事情。

从技术上讲,QMainWindow::show() 并不使窗口可见,它只是在窗口中设置一个标志,Qt 将使其在事件循环的下一次迭代中可见。

另外,直接来自 Qt 关于 QApplication::exec() 的文档:

需要调用这个函数 开始事件处理。主要的 事件循环接收来自 窗口系统并将它们分派给 应用程序小部件。

一般来说,没有用户交互可以 在调用 exec() 之前发生。

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

Qt: 主窗口->show();不显示主窗口 的相关文章

  • 如何获取mp3曲目的时长?

    我想问一下如何在应用程序中获取音频文件的长度 我正在像这样加载曲目 var installFolder Windows ApplicationModel Package Current InstalledLocation var resou
  • 如何将组添加到多个内置功能区选项卡 (vsto)?

    这是 VS2010 Office 2010 加载项 我想要的只是添加一个按钮 或按钮组 到多个内置选项卡 例如 我的按钮应该在两个中都可用新邮件消息功能区 and in 新预约丝带 我尝试添加一个新选项卡 在视觉设计器中 但这似乎不起作用
  • 如何终止从cin读取?

    我已经尝试了这里列出的一堆方法 但没有一个起作用 它总是在等待更多的输入 我试过了while std getline std cin line 和下面的方法 似乎没有任何作用 include
  • 实体框架 - 将枚举的 ICollection 保存在数据库中

    我有一个具有 type 属性的类ICollection
  • 以编程方式解析和编辑 C++ 源文件

    我想以编程方式解析和编辑 C 源文件 我需要更改 添加代码的某些部分 即函数 类块等 中的代码 我也 最好 能够得到评论 我想做的部分事情可以用下面的代码来解释 CPlusPlusSourceParser cp new CPlusPlusS
  • ASP.NET身份更改密码

    我需要能够由管理员更改用户密码 因此 管理员不应输入用户的当前密码 他应该能够设置新密码 我查看了 ChangePasswordAsync 方法 但该方法需要输入旧密码 因此 此方法不适合此任务 因此我通过以下方式做到了 HttpPost
  • 异步方法调用和模拟

    为什么模拟用户上下文仅在异步方法调用之前可用 我编写了一些代码 实际上基于 Web API 来检查模拟用户上下文的行为 async Task
  • 从 ASP.NET 插入到 MS Access

    我们正在尝试建立一个专门用于内联网的服务台票务系统 决定使用 Visual Studio 2008 Express 的 ASP NET C 如果需要的话 我们有一个完整版本 没什么花哨的 几页抓取 NTLM 信息 系统信息并将其与问题一起存
  • 字符集中字符的顺序

    是否通过标准保证字符的顺序 例如 我可以算出字符集表中 1 符号后面跟着 2 符号吗 或者它是特定于平台的 1999 年的 C 标准对字符集是这样规定的 基本源字符集和基本执行字符集都应具有以下成员 拉丁字母表中的 26 个大写字母 拉丁字
  • 可变参数模板中的可变参数模板推导

    我不确定标题是否有意义 但这个例子实际上非常简单 A converter struct with a generic constructor template
  • 错误:非聚合类型“vector”无法使用初始值设定项列表进行初始化

    我是 C 的初学者 每次跑步时vector
  • 如何在没有 ADO 包装器的情况下在 C# 中使用 SQLite

    这可能吗 我读过的所有文章都指出 ADO 包装器是必要的 但 SQLite 网站暗示除了 DLL 之外不需要其他任何东西 如果可能的话 我希望那里有代码示例 看这里 http www sqlite org cvstrac wiki p Sq
  • 如何检测任务栏上的右键单击

    我有一个 C 语言的 Windows 窗体应用程序 它以加载对话框开始 正如预期的那样 该应用程序的按钮会显示在 Windows 任务栏中 我想检测可能对该按钮进行的 右键单击 最终 我希望禁用右键单击或只是让加载对话框重新获得焦点 我看到
  • 实施黑名单的最有效方法

    我开发了一个 Ip 过滤器 并猜测我如何使用任何类型的 esque 数据结构开发一个非常高效且快速的黑名单过滤器 我想做的很简单 每个传入 传出连接我都必须检查被阻止的 IP 列表 IP是分散的 内存使用应该是线性的 不依赖于阻止列表的数量
  • 生成一定范围内的 N 个随机数,其总和为常数

    我想生成从 a b 之间的特定分布 例如均匀随机 抽取的 N 个随机数 其总和为常数 C 我尝试了一些我自己能想到的解决方案 以及在类似线程上提出的一些解决方案 但是他们中的大多数要么适用于有限形式的问题 要么我无法证明结果仍然遵循所需的分
  • Microsoft.IdentityModel.Clients.ActiveDirectory.UserCredential 不采用 2 个参数?

    我在代码中使用 ADAL 我想要使 用的一件事是使用不同的凭据 因此我可以在控制台程序中针对 Azure AD 授权不同的用户 Microsoft IdentityModel Clients ActiveDirectory UserCred
  • 使用 解释 gprof 输出

    我试图在我的程序中找到性能问题 从而通过分析来检测代码 gprof 创建一个如下所示的平面配置文件 Flat profile Each sample counts as 0 01 seconds cumulative self self t
  • 画笔和钢笔使用指南

    制作 GDI 画笔和钢笔有多贵 我应该在添加所需的基础上创建它们并将它们包装在 using 中以便快速处理它们 还是应该创建一个类似于 System Drawing Brushes 类的静态类 IMO 它们足够高效 您通常不应该创建在多个方
  • C# 如何更改 windows.forms.listview 中的网格线颜色

    如何更改 windows forms listview 中的网格线颜色 我认为没有办法在不覆盖 Paint Event 的情况下在列表视图上执行此操作 但是 如果您能够切换到网格视图 您可以这样做 this dataGridView1 Gr
  • 配置 SourceTrail 以接受带有 @ 语法的嵌入式 c/c++ 头文件

    我正在尝试使用 Sourcetrail https www sourcetrail com https www sourcetrail com 快速了解 pic18 系列微控制器的一些旧嵌入式 c c 源代码 导入硬件包含文件时出现错误 该

随机推荐

  • 我想批量将回车换成逗号

    我有一个名为 test txt 的文本文件 其中包含名为PROP VALUES 使用批处理 我想用逗号替换所有其他回车符 但仅限于PROP VALUES部分 附上原始文件test txt和修复后的文件testfixed txt Origin
  • 如何使预处理器为 __LINE__ 关键字生成字符串?

    FILE 由 C 预处理器替换为 MyFile cpp 我想 LINE 替换为 256 字符串而不是 256 整数 不使用我自己编写的函数 例如 toString LINE 那可能吗 我该怎么做 VS 2008 EDIT我想自动查找并替换全
  • 执行java命令时如何获取错误信息?

    我在 java 代码中调用位于 jar 文件中某处的类 使用 java classpath path file jar classname 这很有效 但前提是命令格式良好 如果我犯了一个错误getRuntime exec 命令 只是什么也没
  • 如何在 Angular 中按 ID 显示博客详细信息

    我想在 Angular 中通过 ID 显示博客详细信息 为此 当您单击博客主页上的按钮时 应用程序会将您带到博客详细信息页面 即 pagina component html 文件 我实现了在此处显示所有博客 但我真正想要的是显示一个独特的博
  • 数据库中无法识别的数据类型 nvarchar

    我尝试将 MySQL 服务器数据导入 PHPMyAdmin MySQL 数据库 无法识别的数据类型 nvarchar 发现 我的数据库排序规则设置为 utf general ci 您不必担心 nvarchar 消息 它是由 phpmyadm
  • 在 MATLAB 中矢量图形导出期间位图渲染绘图的一部分

    我有一个非常复杂的函数 我用它来绘制fsurf具有相当高的MeshDensity 我不能比默认值低太多 即 35 导出该图 saveas gcf file pdf pdf 会生成一个 20MB 的 pdf 文件 质量非常好 但渲染速度非常慢
  • 在ggplot2中设置base_size时重叠轴标签

    我正在改变base size via theme set 当我在屏幕上查看结果图时 它看起来很棒 但是 当我将其另存为 pdf 时 x 轴标签有点太接近轴编号 一件小事 theme set theme bw base size 9 不会造成
  • 如何更改 uib-tabset 中每个选项卡的路由

    当我选择一个选项卡时 我希望更改 url 我应该为每个选项卡创建一个状态吗 这是我的代码 无需更改状态即可正常工作 我的应用程序 js var myApp angular module app ui router ngAnimate ui
  • 有没有办法检查 iOS 设备是否锁定/解锁?

    我在我的应用程序中使用了 GPS 位置更新 我想检测 iOS 设备是否处于睡眠模式 以便我可以关闭 GPS 位置更新并优化电池使用 我已经在iOS 6中尝试过pausesLocationupdates 但它无法按预期工作 我想在设备进入睡眠
  • Kafka 消费者无法读取所有可用分区

    我们注意到我们的产品主题之一 6 个分区 存在一个奇怪的问题 其中我们的消费者 dotnet core 只有 1 个实例 只能从 3 个分区 0 1 3 读取 这显然会影响应用程序行为 因为消费者丢失了来自其他 3 个分区 2 4 5 的消
  • 使用 Gradle 构建未签名的 APK

    目前我正在尝试学习 Gradle 来构建 Android APK 如何在 gradle 中设置选项来构建未签名的 APK 您不必设置任何选项 只需运行常规任务即可 gradle assemble 这将在project build apk 中
  • Gitlab CI - 如果缓存存在,如何跳过作业

    我有一个setup我的 CI 中的作业安装了所有 npm 包并将它们存储在缓存中 setup stage pre build cache untracked true when on success key files repo hash
  • Teradata 中变量的声明

    在 teradata 的 sql 方言中是否有与声明类似于此 Sql Server TSQL 代码的变量等效的操作 DECLARE Somedate Date GETUTCDATE SELECT TOP 10 FROM SOMETABLE
  • 带有智能指针的虚拟构造函数习惯用法

    我有一个多态类的层次结构 比如说Shape抽象基类及其派生类 例如Rectangle Circle等 虚拟构造函数习语 http www parashift com c faq lite virtual functions html faq
  • 更改输入上的父 div [type=checkbox]:使用 css 检查[重复]

    这个问题在这里已经有答案了 我可以弄清楚如何在选中复选框时更改父 div 更改以下段落效果很好 在 Chrome 中尝试过这种方法但没有运气 HTML div div
  • 使用休眠截断所有表的最佳方法?

    我想截断一个集成测试与另一个集成测试之间的所有数据库表 使用休眠来执行此操作的最佳方法是什么 目前我正在这样做 public void cleanDatabase doWithSession new Action1
  • PyTorch 训练和验证步骤中的无限循环

    Dataset 和 DataLoader 的部分没问题 我从我构建的另一个代码中回收了 但在我的代码中该部分出现了无限循环 def train train loader MLP epoch criterion optimizer MLP t
  • 从在线签入 TFS 中排除文件夹

    我正在使用 Visualstudio com 作为在线 TFS 并在那里创建了我的代码存储库 在我的项目中 有一个包含多个子文件夹的文件夹 每个子文件夹都有几个图像 所有图像的总数约为 6000 个 当我签入代码时 我不希望签入根文件夹 即
  • 延迟作业排除队列

    我有一个延迟的作业队列 其中包含运行速度特别慢的任务 我希望由自己的一组专用工作人员来处理这些任务 因此它会阻碍其余工作人员管道的风险较小 RAILS ENV production script delayed job queue supe
  • Qt: 主窗口->show();不显示主窗口

    在下面的代码中 我创建一个窗口 调用window show 但窗口直到之后才显示window gt iterateSolution 叫做 几乎就好像 app exec 是显示窗口的函数 我对 Qt 很陌生 所以我不知道发生了什么 inclu