设置 QMessageBox 的父级

2024-02-12

我不明白设置父级有什么好处QMessageBox,例如在以下代码中:

void mainWindow::showMessage(QString msg) {
  QMesageBox::information(this, "title", msg); //'this' is parent
}

有人可以帮助我吗?


大概有几件事。首先QMessageBox继承自QDialog. Since QDialog有父母的概念,QMessageBox为了保持一致性也应该如此。

具体来说,文档说:

父级被传递给 QDialog 构造函数。

至少,新对话框通常显示在其父对话框顶部的中心位置。

然而,还有更多!

根据文档,它可以影响实际功能。例如:

在 Mac OS X 上,如果您希望消息框显示为 Qt::Sheet 它是parent,将消息框的窗口模态设置为 Qt::WindowModal 或使用 open()。否则,消息框将是一个标准对话框。

此外,还有“窗口模态”和“应用程序模态”的概念,前者仅阻止父窗口中的输入,后者阻止整个应用程序的输入。这显然需要了解父母的概念。

最后,对于某些static函数如::about(...),它寻找要使用的图标的第一个地方是parent->icon().

因此,如果您想获得良好的特定于平台的行为并使您的代码跨平台,那么最好将一个健全的父级传递给它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

设置 QMessageBox 的父级 的相关文章

  • 添加对共享类的多个 WCF 服务的服务引用

    我正在尝试将我的 WCF Web 服务拆分为几个服务 而不是一个巨大的服务 但是 Visual Studio Silverlight 客户端 复制了两个服务共享的公共类 这是一个简单的例子来说明我的问题 在此示例中 有两个服务 两者都返回类
  • 在 C++11 中省略返回类型

    我最近发现自己在 C 11 模式下的 gcc 4 5 中使用了以下宏 define RETURN x gt decltype x return x 并编写这样的函数 template
  • ASP .NET MVC,创建类似路由配置的永久链接

    我需要帮助在 MVC 网站中创建类似 URL 路由的永久链接 Slug 已设置为 www xyz com profile slug 代码为 routes MapRoute name Profile url profile slug defa
  • std::map 和二叉搜索树

    我读过 std map 是使用二叉搜索树数据结构实现的 BST 是一种顺序数据结构 类似于数组中的元素 它将元素存储在 BST 节点中并按其顺序维护元素 例如如果元素小于节点 则将其存储在节点的左侧 如果元素大于节点 则将其存储在节点的右侧
  • TextBox 焦点的 WinForms 事件?

    我想添加一个偶数TextBox当它有焦点时 我知道我可以用一个简单的方法来做到这一点textbox1 Focus并检查布尔值 但我不想那样做 我想这样做 this tGID Focus new System EventHandler thi
  • ZLIB 解压缩

    我编写了一个小型应用程序 该应用程序应该解压缩以 gzip deflate 格式编码的数据 为了实现这一点 我使用 ZLIB 库 使用解压缩功能 问题是这个功能不起作用 换句话说 数据不是未压缩的 我在这里发布代码 int decompre
  • 为什么密码错误会导致“填充无效且无法删除”?

    我需要一些简单的字符串加密 所以我编写了以下代码 有很多 灵感 来自here http www codeproject com KB security DotNetCrypto aspx create and initialize a cr
  • 是否有与 C++11 emplace/emplace_back 函数类似的 C# 函数?

    从 C 11 开始 可以写类似的东西 include
  • 单元测试失败,异常代码为 c0000005

    我正在尝试使用本机单元测试项目在 Visual Studios 2012 中创建单元测试 这是我的测试 TEST METHOD CalculationsRoundTests int result Calculations Round 1 0
  • 通过不同 DLL 或 EXE 中的指针或引用访问 STL 对象时发生访问冲突

    我在使用旧版 VC6 时遇到以下问题 我只是无法切换到现代编译器 因为我正在处理遗留代码库 http support microsoft com kb 172396 http support microsoft com kb 172396
  • 组合框项目为空但数据源已满

    将列表绑定到组合框后 其 dataSource Count 为 5 但组合框项目计数为 0 怎么会这样 我习惯了 Web 编程 而且这是在 Windows 窗体中进行的 所以不行combo DataBind 方法存在 这里的问题是 我试图以
  • 用于从字符串安全转换的辅助函数

    回到 VB6 我编写了一些函数 让我在编码时无需关心字符串的 null 和 数字的 null 和 0 等之间的区别 编码时 没有什么比添加特殊情况更能降低我的工作效率了用于处理可能导致一些不相关错误的数据的代码 9999 10000 如果我
  • Qt - 设置不可编辑的QComboBox的显示文本

    我想将 QComboBox 的文本设置为某些自定义文本 不在 QComboBox 的列表中 而不将此文本添加为 QComboBox 的项目 此行为可以在可编辑的 QComboBox 上实现QComboBox setEditText cons
  • 32位PPC rlwinm指令

    我在理解上有点困难rlwinmPPC 汇编指令 旋转左字立即然后与掩码 我正在尝试反转函数的这一部分 rlwinm r3 r3 0 28 28 我已经知道什么了r3 is r3在本例中是一个 4 字节整数 但我不确定这条指令到底是什么rlw
  • 无法使用 Ninject 将依赖项注入到从 Angular 服务调用的 ASP.NET Web API 控制器中

    我将 Ninject 与 ASP NET MVC 4 一起使用 我正在使用存储库 并希望进行构造函数注入以将存储库传递给其中一个控制器 这是实现 StatTracker 接口的上下文对象 EntityFramework public cla
  • 同时从多个流中捕获、最佳方法以及如何减少 CPU 使用率

    我目前正在编写一个应用程序 该应用程序将捕获大量 RTSP 流 在我的例子中为 12 个 并将其显示在 QT 小部件上 当我超过大约 6 7 个流时 问题就会出现 CPU 使用率激增并且出现明显的卡顿 我认为它不是 QT 绘制函数的原因是因
  • 为什么 Ajax.BeginForm 在 Chrome 中不起作用?

    我正在使用 c NET MVC2 并尝试创建一个 ajax 表单来调用删除数据库记录 RemoveRelation 的方法 删除记录的过程正在按预期进行 删除记录后 表单应调用一个 JavaScript 函数 从视觉效果中删除该记录 Rem
  • boost::program_options:带有固定和可变标记的参数?

    是否可以在 boost program options 中使用此类参数 program p1 123 p2 234 p3 345 p12 678 即 是否可以使用第一个标记指定参数名称 例如 p 后跟一个数字 是动态的吗 我想避免这种情况
  • 如何确定母版页中正在显示哪个子页?

    我正在母版页上编写代码 我需要知道正在显示哪个子 内容 页面 我怎样才能以编程方式做到这一点 我用这个 string pageName this ContentPlaceHolder1 Page GetType FullName 它以 AS
  • 如何创建向后兼容 Windows 7 的缩放和尺寸更改每显示器 DPI 感知应用程序?

    我是 WPF 和 DPI 感知 API 的新手 正在编写一个在 Windows 7 8 1 和 10 中运行的应用程序 我使用具有不同每个显示器 DPI 设置的多个显示器 并且有兴趣将我的应用程序制作为跨桌面配置尽可能兼容 我已经知道可以将

随机推荐

  • 将 pv 输出(stderr)打印到文件

    我怎样才能打印stderr questions tagged stderr的输出pv questions tagged pv到一个文件 例如 timeout 5s dd if dev random pv r gt dev null 505k
  • UIButton 图像位置取决于 titleLabel 的框架

    我的问题很简单 但我找不到解决方案 我有一个带有标题和图像的 UIButton 我希望无论发生什么情况图像位置都是固定的 所以我这样设置 button setImageEdgeInsets UIEdgeInsetsMake 0 f 0 f
  • Selenium - 如何计算表中的行数?

    我有一个包含 n 行的表 我需要计算它们 该怎么做 示例 我的表格如下所示 Type Balance Date received Date returned Payment method Amount General Default 10
  • 从文件夹 ES6 导入

    我正在学习JS 我有这样的东西 all inside folder reducers reducer1 js export default reducer1 reducer2 js export default reducer2 index
  • 在 React 和 Redux 中处理本地状态

    是否可以将本地状态存储在state与 redux 一起使用 React 时的对象 通过操作将所有内容存储在状态树中很快就会变得乏味 感觉某些状态仅与应用程序的呈现 显示相关 而不与逻辑相关 我所说的演示是指动画 闪烁 面板的展开 收缩状态
  • NetBeans 12.0:“类没有 main 方法”(但有)

    NetBeans 12 0 Jdk 15 我无法启动我的程序 单击绿色运行按钮不会执行任何操作 并且在 MainFrame 上右键单击 运行文件会出现错误 类没有主方法 但正如您在下面的 GIF 中看到的 它确实有一个 main Strin
  • Android 中如何将一个值从一个 Activity 传递到另一个 Activity? [复制]

    这个问题在这里已经有答案了 我创建了一个带有 AutuCompleteTextView ACTV 和按钮的活动 我在 ACTV 中输入一些文本 然后按下按钮 按下按钮后 我希望该活动转到另一个活动 在第二个活动中 我只想将在第一个活动的 A
  • 无限大小的整数?

    在Python中 我可以编写一个程序来计算无限大小的整数 就在前几天 我做了百万分之一斐波那契数 它太大了 无法放入控制台 如果可以在 Python 中做到这一点 据我了解 Python 是用 C 编写的 那么如何在 C 中做到同样的事情呢
  • 我们如何跟踪 Javascript 错误?现有的工具真的有用吗?

    今天我发现需要跟踪和检索 Javascript 错误堆栈跟踪来解决这些问题 今天 我们能够捕获所有其余调用 其想法是 一旦出现错误 就会自动发布该错误的堆栈跟踪以及其余保存的服务的响应 以便我们可以以几乎相同的方式检测 重现和解决问题环境
  • 使用 XHR 流时通过 SockJs 确定 STOMP 的用户

    客户端不支持WebSockets 因此SockJs使用XHR Streaming和defineUser 虽然在使用WebSockets时被调用 但根本不会被调用 还有其他方法来设置本金吗 这就是我所拥有的 class CustomHands
  • 从系列/列中查找第一个元素(例如“True”)的索引

    如何查找系列或列中元素的索引 例如 True 例如 我有一个列 我想在其中识别事件发生的第一个实例 所以我把它写成 Variable df Force lt event 然后 这将创建一系列布尔数据 其中为 False 直到第一个实例变为
  • RAML:嵌套模式

    1 编写 RAML 时 我可以在模式定义中使用嵌套吗 例如 schemas DNSResponse type object properties AnswerSection type array items I want a re usea
  • Rails ActiveRecord::多参数分配错误

    我的模型中有以下代码 attr accessor expiry date validates presence of expiry date on gt create message gt can t be blank 我认为以下几点 但是
  • WebClient.UploadString 方法的最大数据长度

    我的 asp net mvc 应用程序中有以下代码 string URI http send url com smsapi sender php string queryParameters a long query string stri
  • scipy curve_fit多系列数据

    我试图建立一个曲线拟合 考虑基于相同 x 值和相同 指数 定律的多个 y 系列 该系列中的 y 值略有不同 因为它们是实验性的 但仍然很接近 x 相同 我尝试构建两个数组 一个包含 x 另一个包含两个不同系列的 y def f x a b
  • ContentResolver.bulkInsert(..) 的意义是什么?

    My goal 我想批量 以事务方式 将多条记录插入到sqlite中 我的问题 我找到了方法android content ContentResolver 批量插入 http android git kernel org p platfor
  • PHP 中的位操作和 MySQL 检索

    我正在尝试稍微优化我的 mysql 表 以获得一个更易于管理的表 我想将用户权限存储在一个位字段中 例如 用户权限可以是 0110 我的用户权限数量越来越多 因此长度可能会长一点 该示例可能对应于以下内容 0 用户不能在网站上发布新闻 1
  • Groovy 中的爬虫(JSoup VS Crawler4j)

    我希望在 Groovy 中开发一个网络爬虫 使用 Grails 框架和 MongoDB 数据库 它能够爬取网站 创建网站 URL 及其资源类型 内容 响应时间和涉及的重定向数量的列表 我正在争论 JSoup 与 Crawler4j 我已经阅
  • HTML5 日期输入 6 位数年份

    我有一个标准
  • 设置 QMessageBox 的父级

    我不明白设置父级有什么好处QMessageBox 例如在以下代码中 void mainWindow showMessage QString msg QMesageBox information this title msg this is