QT应用程序退出后,如何让eglfs不清屏,仍然显示最后的画面?
我知道 VS + qt plugin 的方式可以
Visual Studio 2019 设置程序结束控制台不关闭_console 不关闭_Loup&卡普的博客-CSDN博客
【以下回答由 GPT 生成】
要实现在QT应用程序退出后保留eglfs画面而不清屏,可以通过以下步骤进行操作:
#include <QApplication>
#include <QMainWindow>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QMainWindow mainWindow;
// 设置主窗口不可见
mainWindow.setVisible(false);
// 发送延迟信号
QTimer::singleShot(100, [&a, &mainWindow](){ a.quit(); });
return a.exec();
}
closeEvent
函数,在关闭窗口之前隐藏窗口,并发送延迟信号。#include <QMainWindow>
#include <QCloseEvent>
class MainWindow : public QMainWindow
{
Q_OBJECT
protected:
void closeEvent(QCloseEvent *event) override
{
// 隐藏窗口
setVisible(false);
// 发送延迟信号
QTimer::singleShot(100, [this, event]() {
QMainWindow::closeEvent(event);
});
}
};
QT += core gui
…
TARGET = YourApp
CONFIG += eglfs
…
QMAKE_LFLAGS += -Wl,-rpath,\\$$ORIGIN/plugins
qmake
make
./YourApp
通过以上步骤,你将能够实现在QT应用程序退出后保留eglfs画面而不清屏。
请注意,此解决方案代码展示仅供参考,你可能需要根据你的实际情况进行适当的修改和调整。
【相关推荐】