问题标签 [qsplashscreen]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6007 浏览

c++ - Qt 启动画面不显示

我有这段代码,我希望它显示一个启动屏幕,因为它会更大,已经制作了一种计时器,因此可以看到启动屏幕工作。问题是我没有看到启动画面,但代码将在启动画面不出现时运行,直接将我发送到主窗口而不显示启动画面。这是我的代码。

主文件

启动窗口.cpp

启动窗口.h

命令以这样的方式运行,即启动画面在运行之前不会出现,不显示,我找不到修复方法。

[编辑] 与闭包对应的部分代码放错了位置,但正确放置后仍然不起作用。

0 投票
1 回答
130 浏览

macos - 在 OSX 上的 QSplashScreen 中获取按键

我试图在我的主窗口打开之前从 QSplashScreen 获取按键。我的启动类继承自 QSplashScreen 并覆盖了 keyPressEvent 方法。

下面的代码适用于 Windows,但在 OSX 上,在主窗口打开之前不会拦截按键。

有解决方法吗?

这是使用 Qt 5.2.1,但我认为这个问题也在早期(4.X)版本中。

飞溅.cpp:

主.cpp:

0 投票
2 回答
909 浏览

c++ - 反复点击QSSplashscreen背景变黑

我正在使用QSplashscreen在我的应用程序中显示启动画面。通常,当我在加载应用程序时单击启动画面时,启动画面会消失。我看到mousepresseventonQsplashscreen是为了调用hide小部件的功能。

但有时当我反复点击闪屏时,闪屏背景会变黑,如果我继续点击,我会收到一条消息,说应用程序没有响应。但过了一会儿,应用程序运行良好。

为什么有时我在启动画面上单击鼠标时会出现黑色背景?我使用的 Qt 版本是 4.8.5

0 投票
1 回答
3742 浏览

c++ - Qt : 在应用程序加载期间显示图片

我想向加载缓慢的应用程序添加启动画面。我创建了一个简单的应用程序来测试。

主.cpp:

main.qml

我添加了一个长功能来增加加载时间。当应用程序状态时,我可以看到图片的“阴影”。图片似乎在应用程序之前完全加载。我尝试过使用资源上的图像和绝对路径,但问题是一样的。 图片的

0 投票
1 回答
887 浏览

c++ - 从线程重绘启动画面/禁用断言

问题

我想使用 aQTimer来更新绘制进度条的派生QSplashScreen项(使用绘制命令,而不是小部件)来估计程序何时开始运行。

必要时,这发生在exec调用QCoreApplication. 通过在第二个线程中放置一个计时器,并在启动屏幕中调用一个更新进度并重新绘制小部件的函数,我已经在 X11 和 Windows 上让它工作(仅在发布模式下)。但是,这在调试模式下不起作用,因为它会产生以下错误:

"ASSERT failure in QCoreApplication::sendEvent: "Cannot send events to objects owned by a different thread."

我并不真正担心这个断言,因为代码在发布时不会崩溃,它只是一个闪屏,但是我需要能够在调试中运行程序,所以我想要么a)重构代码所以它不会触发断言,或者 b) 禁用此特定断言。

试过:

  • 使用update()而不是repaint(). finish这不会导致断言,但它也不会重新绘制,因为主线程太忙于加载共享库等,并且在我准备好在启动屏幕上调用之前不会处理计时器事件.
  • QTimer主循环开始。结果与上述相同。
  • 使用QT::QueuedConnection. 结果相同。

主要的

启动画面

我的主窗口

0 投票
1 回答
662 浏览

c++ - Qt 闪屏不会关闭

我有一个QSplashScreen通过一堆图像运行的制作,类似于 gif,并在主窗口打开时关闭。这在 Windows 上运行良好,但是当我在 mac 上运行它时,它变得很时髦。而不是在浏览完所有图片时关闭,就像它应该在单击时以相反的顺序开始浏览图像一样。

这是标题(splashscreen.h):

这是实现(splashscreen.cpp):

这是主文件(main.cpp):

我有几种不同的方法来关闭启动画面,但它们似乎都不起作用。这是mac中的错误还是我可以在我的代码中修复什么?

0 投票
1 回答
600 浏览

c++ - 如何在初始 show() 后将小部件添加到 QSplashScreen?

所以我打算的程序流程是这样的:

  1. 创建,show() QSplashScreen实例。
  2. 初始化系统的其他部分,包括 i18n 模块
  3. 将(翻译的)版权声明 ( QLabel) 添加到QSplashScreen实例中。

问题是,除非我hide()启动启动屏幕,调用QApplication::processEvents,添加QLabel,然后重新show()启动启动屏幕 - 显然会导致巨大的闪烁 -QLabel不会呈现。

也就是说,如果我只写这个,我看不到通知:

我必须在上述内容之前

如何pSplashNotice在不必隐藏启动画面的情况下进行渲染?

0 投票
1 回答
659 浏览

c++ - 如何控制 QSplashscreen 的定位?

我有一个在不同场景中使用 3 个启动画面的应用程序。问题是我似乎无法设置这些 QSplashScreens 的几何形状或定位。实际上,当应用程序大小发生变化或应用程序在屏幕上的位置发生变化时,闪屏就会不受控制地显示在随机位置。我该如何控制它?

0 投票
1 回答
1511 浏览

c++ - 如何在 Qt 中自定义加载屏幕?

我需要在 Qt 中创建一个自定义的动画加载屏幕,我不需要进度条。

我想做这样的事情:

在此处输入图像描述

任何人都知道我该怎么做?

例如,我可以使用 QSplashScreen 吗?

0 投票
0 回答
923 浏览

qt - 让 QSplashScreen 在我的应用程序中工作

文档中有一个示例提供了以下代码,这似乎很简单:

现在问题是我正在使用 QApplication,创建一个引擎并打开我的 QML 文件,如下所示:

从文档中我无法真正理解如何像示例中那样使用 QMainWindow 方式,而不将文件的 URL 作为参数传递(没有这样的函数可用)。我是否必须编写从 QMainWindow 派生的 C++ 类或类似的东西?还是我错过了另一个重要的点?我对让 QSplashScreen 正常工作的任何其他建议感到高兴。