使用 Visual Studio / Qt 中止执行
aborting the execution with Visual Studio / Qt
我想中止应用程序执行(使用 Qt 完成),并显示错误消息,以防出现问题。
与 abort(); 它对我不起作用。
你有什么建议吗?
最简单的方法是使用非零结果代码退出应用程序的事件循环,然后显示一个消息框。您可以手动重新启动事件循环,也可以让消息框的静态方法为您执行此操作。
#include <QPushButton>
#include <QMessageBox>
#include <QApplication>
QString globalMessage;
class Failer : public QObject {
Q_OBJECT
public:
Q_SLOT void failure() {
globalMessage = "Houston, we have got a problem.";
qApp->exit(1);
}
};
int main(int argc, char ** argv) {
QApplication app(argc, argv);
QPushButton pb("Fail Me");
Failer failer;
failer.connect(&pb, SIGNAL(clicked()), SLOT(failure()));
pb.show();
int rc = app.exec();
if (rc) {
QMessageBox::critical(NULL, "A problem has occurred...",
globalMessage, QMessageBox::Ok);
}
return rc;
}
#include "main.moc"
相关文章:
- 在Visual Studio 2017中构建Qt可执行文件
- Qt Creator 在执行步骤 "make" 时出现编译错误,-fno-stack-limit
- 当再次触发信号时,从Qt插槽执行的功能被第二次调用时会发生什么?
- 在Qt中执行完所有插槽后,如何释放对象
- 如何防止GUI挂起,同时允许第二次操作与Qt中的第一次操作一起执行
- 如何在Mac OSX上的Qt中使用pkcs12 / pfx成功执行SSL加密?
- 从Qt应用程序执行MSI文件
- Qt不能多次执行线程
- Qt PushButton + clicked() 并不总是执行
- 使用 QT 执行二进制构建失败
- 在Qt中设置pixmap时的执行时间很奇怪
- 从 Qt(release) 生成的文件执行.EXE文件时出错
- 在 Qt 中将 x 可执行文件作为按钮事件运行时出错
- 应用程序在 C++ QT 上执行 sql 后崩溃
- 如何从控制台启动可执行文件并使用Qt读取输出
- 执行 Qt::QueuedConnection 信号始终按顺序调用
- 有什么方法可以判断分叉/执行Qt应用程序的主窗口何时显示?
- 正在执行qt网络请求
- 选择并执行Qt中QListWidget上显示的MIDI文件
- linux mint终端不执行Qt creator给出的命令