gpt4 book ai didi

c++ - 用qt关闭外部应用程序

转载 作者:行者123 更新时间:2023-11-30 00:53:10 25 4
gpt4 key购买 nike

请问如何关闭我之前在 qt c++ 中使用 QDesktopServices::OpenURL 打开的应用程序。因为我需要更新我已经在某个时间点在我的应用程序外打开的 PDF 中的文本。

QPrinter printer(QPrinter::HighResolution);
printer.setOutputFormat(QPrinter::pdfFormat);
printer.setOutputFileName("file.pdf");
doc.print(&printer); // doc is QTextDocument
QDesktopServices::openUrl(QUrl("file.pdf"));

我还想知道 QDesktopServices::OpenURLQt::openUrlExternally 之间的区别,以及何时使用它们。

最佳答案

您无法关闭由 QDesktopServices::OpenURL 打开的外部应用程序。没有这样的选项,并且此方法不提供有关可用于关闭它的已启动进程的信息。

您可以使用 native C++ 平台相关函数来确定 PDF 查看器可执行文件的路径。然后您可以使用 QProcess 启动它。所以 kill()terminate() 可以用来关闭应用程序。

Qt::openUrlExternally可用于QML代码,QDesktopServices::OpenURL可用于C++代码。这是唯一的区别。我已经阅读了 Qt::openUrlExternally 来源,它在内部调用了 QDesktopServices::OpenURL

关于c++ - 用qt关闭外部应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17243127/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com