如何在Qt5中使用QMessageBox?

如何在Qt5中使用QMessageBox?,qt,qt5,Qt,Qt5,所以我在Qt5.2.1中制作了一个程序。我需要的是,当用户单击一个按钮时,会出现一个警告,如果用户单击“确定”,则程序继续,如果用户单击“取消”,则不会发生任何事情 我该怎么做?我对Qt完全是个新手。这是一种方法。我努力使它尽可能的正确和最小化。我注意到以下几点: 重新进入事件循环的阻塞方法必然是bug的来源,永远不应该使用。因此,我们不使用QMessageBox::exec() 使用标准按钮 提供的文本和信息文本都符合跨平台的人机界面指南 消息框的模态是根据我们的实际需求设置的。它是窗口模式,

所以我在Qt5.2.1中制作了一个程序。我需要的是,当用户单击一个按钮时,会出现一个警告,如果用户单击“确定”,则程序继续,如果用户单击“取消”,则不会发生任何事情

我该怎么做?我对Qt完全是个新手。

这是一种方法。我努力使它尽可能的正确和最小化。我注意到以下几点:

  • 重新进入事件循环的阻塞方法必然是bug的来源,永远不应该使用。因此,我们不使用
    QMessageBox::exec()

  • 使用标准按钮

  • 提供的文本和信息文本都符合跨平台的人机界面指南

  • 消息框的模态是根据我们的实际需求设置的。它是窗口模式,防止与底层窗口交互,但不能与应用程序的其余部分交互

  • 子窗口小部件是常规成员,不直接在堆上分配。这使内存管理更加容易,并充分利用了内存。在内部,它们无论如何都会堆分配它们的资源

  • 在构造成员时使用

  • 添加到布局的小部件不会传递给父级。这样做是多余的

  • 插槽被赋予描述性名称,指示它们所作用的小部件和信号。结合提供widgets对象名称,这让我们能够利用
    connectSlotsByName
    机制。它还简化了调试,因为调试助手允许我们在调试Qt应用程序时查看对象名称

  • 顺便说一句,我盯着你看。你知道,那眼神

    //main.cpp
    #包括
    #如果QT\u版本
    参考文档,有很多示例和(视频)教程可以帮助您入门()请参见。实际上,对于Qt,有很多简单的示例。研究他们@thuga我读了这篇文章,遇到了qdebug和qwarning,但它并没有回答我的问题。我想检查用户是否单击OK(确定)。如果您认为您在那里“遇到qdebug和qwarning”,您可能希望重新阅读文档。