删除 QGridLayout 中的所有间距

2024-03-11

我正在尝试以编程方式(使用 Qt 4.6)构建一个包含一系列的窗口QPushButton的,全部挤在一起。它应该看起来像这样(我称之为工具箱):

工具箱图像http://img99.imageshack.us/img99/9853/examplezk.png http://img99.imageshack.us/img99/9853/examplezk.png

因此,我创建了一个继承自 QWidget 的 Toolbox 类,它具有以下构造函数:

Toolbox::Toolbox (void)
  : QWidget (0, Qt::Tool)
{
  setWindowTitle (tr ("Toolbox"));

  QGridLayout *group = new QGridLayout (this);
  group->setSpacing (0);
  group->setContentsMargins (0, 0, 0, 0);
  group->setSizeConstraint (QLayout::SetFixedSize);
  setLayout (group);

  unsigned k = 0;
  QPushButton *buttons = new QPushButton[6];
  for (unsigned i = 0; i < 3; i++)
    for (unsigned j = 0; j < 2; j++)
    {
      buttons[k].setIcon (QIcon ("test.png"));
      buttons[k].setIconSize (QSize (32, 32));
      buttons[k].setContentsMargins (0, 0, 0, 0);
      buttons[k].setCheckable (true);
      buttons[k].setAutoExclusive (true);

      group->addWidget (&buttons[k], i, j);
      k++;
    }
  buttons[1].setChecked (true);

不知怎的,它不起作用,我的按钮最终没有挤在一起:

结果http://img9.imageshack.us/img9/774/resultr.png http://img9.imageshack.us/img9/774/resultr.png

我无法设法删除这个垂直间距(以及整个数组周围的边距)。欢迎任何帮助。


显然,这被认为是正常的事情:参见相应的错误报告 https://bugreports.qt.io/browse/QTBUG-2699,已关闭。那里报告的解决方法似乎对我不起作用。

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

删除 QGridLayout 中的所有间距 的相关文章

随机推荐

  • 当多个 Rust 源文件共享相同名称时,我可以设置 LLDB 断点吗?

    背景 在 Rust 中 您通常有多个名为mod rs 例如 app name src main rs foo mod rs bar mod rs Problem 我找不到区分的方法mod rs设置 LLDB 断点时来自另一个 cargo b
  • 终端未在 Android Studio 中注册输入

    当我在 android studio 中打开终端并键入时 没有任何记录并且光标保持不变 屏幕截图在闪烁之间捕获了光标 但它仍然位于应用程序之后的 gt 旁边 4 个月前 其他人也遇到了同样的问题 Android Studio 终端问题 ht
  • 无法使用 ActionBarSherlock 更改选项卡的背景

    我想更改选项卡的背景 在过去的两天里我尝试了一切 所以我决定在这里发布我的代码 ActionBar 的背景设置正确 但 TABS 保持黑色
  • 将范围变量传递给 ng-click 中的函数

    所以我知道我一定错过了这个问题的 javascript 的一些基本部分 但无论如何它都是这样的 我有一个控制器 其中声明了一个变量 scope IsStartDatePickerHidden true scope IsEndDatePick
  • 摩卡作为图书馆

    我想使用 mocha node js 测试框架 而不是 ruby 模拟库 作为库 而不是使用 mocha 可执行文件来运行我的测试 是否可以通过这种方式运行摩卡测试 这些示例都只是调用 mocha 库 假设它们已经是 require 并且
  • 使用引导网格系统嵌套行?

    我想要 1 个较大的图像和 4 个 2x2 格式的较小图像 如下所示 我最初的想法是将所有东西都放在一排 然后创建两列 并在第二列中创建两行和两列以创建 1x1 和 2x2 效果 但是 这似乎不可能 或者我只是做得不正确 引导版本 3 x
  • 如何编写 Webpack 插件,根据其他模块动态地将模块添加到捆绑包中?

    我在为翻译服务编写 Webpack 插件时遇到问题 目标是 获取编译期间所有必需模块的名称 和源代码 我需要能够扫描包含的源代码以获取特殊的t 函数用法 但我只想扫描那些将包含在捆绑包中的模块 根据构建配置 这些模块可以是所有项目模块的子集
  • 成功插入数据后如何清除单选按钮列表?

    任何人都可以帮我解决这个简单的问题 如何在提交表单后清除单选按钮列表的选择 我需要在我的 ASP NET Web 应用程序中使用它 当用户单击清除按钮时 我需要清除单选按钮列表的选择 提前致谢 你可以 设置 myrbList Selecte
  • 删除带有嵌入空格的路径中的所有 .SVN 文件夹

    In 这个问题 https stackoverflow com questions 5935776 how to delete svn folders in my source tree 13850323 13850323以及其他一百个地方
  • Python - Pandas:给定行中最小值的数字/索引

    我有一个 pandas 数据框 具有一行和多列 我想获取给定行中最小值的列号 索引 我找到的代码是 df columns get loc colname 上面的代码要求提供列名称 我的数据框没有列名 我想获取最小值的列位置 Use argm
  • Android Studio:设计视图中“创建景观变化”的按钮在哪里?

    我在哪里可以找到按钮创造景观变化 https stackoverflow com questions 28815769 android studio creating landscape layouts answer 29467041 在我
  • 如何在 SQLiteDatabase 查询中测试光标是否为空

    我有一个由以下代码创建的 SQL 表 public void onCreate SQLiteDatabase db db execSQL CREATE TABLE TABLE NAME ID INTEGER PRIMARY KEY AUTO
  • 布尔值 FALSE 和 TRUE 可以重新定义吗

    我正在读一本关于 PHP 以及如何使用 PHP 的书TRUE and FALSE 它说 事实上 小写版本更稳定 因为 PHP 不 允许您重新定义它们 大写的可以重新定义 我尝试重新定义TRUE and FALSE 但没有成功 我谷歌重新定义
  • 存储大量数据:数据库还是文件系统?

    假设我的应用程序创建 存储和检索大量条目 数千万 每个条目具有可变数量的不同数据 例如 某些条目仅具有几个字节 例如ID 标题 而某些条目可能具有兆字节的补充数据 每个条目的基本结构相同 并且采用 XML 格式 条目是任意创建和编辑的 很可
  • 从 CouchDB 解析 JSON 时如何超越“total_rows”

    我使用以下 jQuery 代码从 CouchDB 获取 JSON 文件 Function getURL var api url http 127 0 0 1 5984 couchcontentqueue design DocCollecti
  • 子类化后的委托?

    抱歉 我无法为标题提出一个简短的问题 如果我使用委托协议和属性对一个类进行子类化 我的委托是否仍然需要实现超类的委托协议 或者我是否必须为子类定义一个新的委托协议 就我而言 我细分了UIImagePickerController UIIma
  • Google 语音 API - php 不返回任何内容

    我的代码受到用于语音转文本的全双工谷歌语音 API 的 php 版本的启发 http mikepultz com 2013 07 google speech api full duplex php version http mikepult
  • Swift 中的构建器模式设置方法

    我刚刚从 Android 基础转移到 ios 在 swift 中寻找构建器模式 get 和 set 方法 但找不到类似的东西 仅发现以下内容 var ptype String get return self ptype set ptype
  • Spring WebSocket 使用 SockJS 连接到不同的域

    Spring 中的 WebSockets 是一个相当新的主题 我厌倦了寻找更多内容 我的问题是连接到来自不同域的服务 我正在与 Lineman 一起构建前端 并与 Spring Boot 一起构建后端 我在两个不同的端口上有这些应用程序 8
  • 删除 QGridLayout 中的所有间距

    我正在尝试以编程方式 使用 Qt 4 6 构建一个包含一系列的窗口QPushButton的 全部挤在一起 它应该看起来像这样 我称之为工具箱 工具箱图像http img99 imageshack us img99 9853 examplez