问题标签 [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.
c++ - Qt 启动画面不显示
我有这段代码,我希望它显示一个启动屏幕,因为它会更大,已经制作了一种计时器,因此可以看到启动屏幕工作。问题是我没有看到启动画面,但代码将在启动画面不出现时运行,直接将我发送到主窗口而不显示启动画面。这是我的代码。
主文件
启动窗口.cpp
启动窗口.h
命令以这样的方式运行,即启动画面在运行之前不会出现,不显示,我找不到修复方法。
[编辑] 与闭包对应的部分代码放错了位置,但正确放置后仍然不起作用。
macos - 在 OSX 上的 QSplashScreen 中获取按键
我试图在我的主窗口打开之前从 QSplashScreen 获取按键。我的启动类继承自 QSplashScreen 并覆盖了 keyPressEvent 方法。
下面的代码适用于 Windows,但在 OSX 上,在主窗口打开之前不会拦截按键。
有解决方法吗?
这是使用 Qt 5.2.1,但我认为这个问题也在早期(4.X)版本中。
飞溅.cpp:
主.cpp:
c++ - 反复点击QSSplashscreen背景变黑
我正在使用QSplashscreen
在我的应用程序中显示启动画面。通常,当我在加载应用程序时单击启动画面时,启动画面会消失。我看到mousepressevent
onQsplashscreen
是为了调用hide
小部件的功能。
但有时当我反复点击闪屏时,闪屏背景会变黑,如果我继续点击,我会收到一条消息,说应用程序没有响应。但过了一会儿,应用程序运行良好。
为什么有时我在启动画面上单击鼠标时会出现黑色背景?我使用的 Qt 版本是 4.8.5
c++ - Qt : 在应用程序加载期间显示图片
我想向加载缓慢的应用程序添加启动画面。我创建了一个简单的应用程序来测试。
主.cpp:
main.qml
我添加了一个长功能来增加加载时间。当应用程序状态时,我可以看到图片的“阴影”。图片似乎在应用程序之前完全加载。我尝试过使用资源上的图像和绝对路径,但问题是一样的。
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
. 结果相同。
主要的
启动画面
我的主窗口
c++ - Qt 闪屏不会关闭
我有一个QSplashScreen
通过一堆图像运行的制作,类似于 gif,并在主窗口打开时关闭。这在 Windows 上运行良好,但是当我在 mac 上运行它时,它变得很时髦。而不是在浏览完所有图片时关闭,就像它应该在单击时以相反的顺序开始浏览图像一样。
这是标题(splashscreen.h):
这是实现(splashscreen.cpp):
这是主文件(main.cpp):
我有几种不同的方法来关闭启动画面,但它们似乎都不起作用。这是mac中的错误还是我可以在我的代码中修复什么?
c++ - 如何在初始 show() 后将小部件添加到 QSplashScreen?
所以我打算的程序流程是这样的:
- 创建,
show()
QSplashScreen
实例。 - 初始化系统的其他部分,包括 i18n 模块
- 将(翻译的)版权声明 (
QLabel
) 添加到QSplashScreen
实例中。
问题是,除非我hide()
启动启动屏幕,调用QApplication::processEvents
,添加QLabel
,然后重新show()
启动启动屏幕 - 显然会导致巨大的闪烁 -QLabel
不会呈现。
也就是说,如果我只写这个,我看不到通知:
我必须在上述内容之前
如何pSplashNotice
在不必隐藏启动画面的情况下进行渲染?
c++ - 如何控制 QSplashscreen 的定位?
我有一个在不同场景中使用 3 个启动画面的应用程序。问题是我似乎无法设置这些 QSplashScreens 的几何形状或定位。实际上,当应用程序大小发生变化或应用程序在屏幕上的位置发生变化时,闪屏就会不受控制地显示在随机位置。我该如何控制它?
qt - 让 QSplashScreen 在我的应用程序中工作
文档中有一个示例提供了以下代码,这似乎很简单:
现在问题是我正在使用 QApplication,创建一个引擎并打开我的 QML 文件,如下所示:
从文档中我无法真正理解如何像示例中那样使用 QMainWindow 方式,而不将文件的 URL 作为参数传递(没有这样的函数可用)。我是否必须编写从 QMainWindow 派生的 C++ 类或类似的东西?还是我错过了另一个重要的点?我对让 QSplashScreen 正常工作的任何其他建议感到高兴。