问题标签 [qgridlayout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
711 浏览

qt - 具有不同行数和列数的表(差异。宽度)(Qt5,QGridLayout)

我想创建一个基于 QGridLayout 的表格,其中包含我的自定义小部件,每行中有不同数量的列,例如:http ://urls.by/tbl

我该怎么做?

当我在第一行更改小部件宽度时,另一行也会更改宽度。

0 投票
1 回答
476 浏览

c++ - QScrollArea 中没有显示任何内容

我有一个不错的小部件,它基本上看起来像一个带有一堆 QSlider 的对话框。滑块的数量取决于调用对话框(不是实际的 QDialog;只是一个 QWidget)时的情况。

由于不同数量的滑块导致盒子在不同时间的大小不同,我现在想通过将滑块限制到 QScrollArea 来稍微清理一下。如果我理解正确,这样的滚动区域会显示许多滑块,但它的高度内适合多少滑块,如果有更多滑块,可以向下滚动以查看其余部分。

无论如何,我尝试了一个(有点复杂)这样的程序:

在自定义 QWidget 类的构造函数中(m_variableName = 成员变量):

在构造函数之后,会根据实际情况对滑块进行设置:

这个过程不会导致整个对话框中显示任何内容,除了左侧的固定滚动条。如果可能的话,使这项工作正常进行的初始化步骤的正确顺序是什么?我的猜测是我可能给了错误的父项或在错误的时间设置了布局,但是到目前为止我尝试过的重新排列都没有奏效......

0 投票
1 回答
608 浏览

c++ - 在 QGridLayout 中单独更改边距

我有一个 QGridLayout 主要包含 QLabels。这是一个 3x10 的网格,我希望三列中每一列的内容都有不同的边距。例如。我希望能够将具有不同空间量的标签放置在它们的网格边界上。

如果我设置属性 ContentMargins 它只是指我网格中的所有内容。

换句话说:如何为 QGridLayout 中的单个列设置内容边距?

...当我们这样做的时候,你可以对个别行做同样的事情吗?

预先感谢您的帮助!

0 投票
0 回答
425 浏览

c++ - 使用 QWidgets + QPainter.DrawImage 设置具有相同单元格大小的 QGridLayout 不显示图像

首先,我将描述我想做什么。我正在使用 QT 构建一个窗口应用程序。我本质上想做的是说,我想要一个 10x10 的网格布局,所有单元格都是 5x5,但不必先填充网格!我使用扩展 QWidget 类的 Widget 类填充网格。Widget 或 QWidget 在构造函数上有一个 .resize(w,h) 所以我虽然这会在加载时限制小部件的 w 和 h。然而,当我将一个小部件添加到网格时,它只是在中心和下一个它想要的地方!

此外,在 QWidget::Widget 内部,当它被单击并且 blClicked = true 时,应该加载图像.. 但它不是!*详见代码。

我本质上想要实现的是这一点,但在 qgridlayout 中有 0 个 qwidget 并将它们从左下角到左上角等依次增加 1 乘 1。

谢谢!

代码如下:

小部件.h

小部件.cpp

主窗口.cpp

0 投票
1 回答
882 浏览

python - PyQt - 添加对齐时自定义小部件消失

我遇到了一个问题,我正在制作的自定义小部件在添加到 QGridLayout 而不指定对齐时看起来很好,但是当我指定对齐时它消失了。

这是自定义小部件:

这是一个可以正常显示的示例:

但是,如果我将其更改为以下内容,则不再显示:

我需要在 OutlineLabel 类中设置一些信息才能正确使用对齐方式吗?

0 投票
0 回答
131 浏览

c++ - 将小部件的副本或图像插入 QGridLayout

我有一个四面板 QGridLayout 并想保留其中一个面板用于其他小部件的微型视图,例如 3D 视图。我想在 QGridLayout 中显示的特定小部件是动态指定的。

但是,当我通过 将小部件传递给 QGridLayout 时QGridLayout::addWidget,小部件会从以前的位置消失。显然,这是 QGridLayout 的一个策略。

有没有办法避免这种情况?我可以告诉 QGridLayout 保留我正在添加的特定小部件的副本吗?有没有办法传递小部件的副本或图像?我只是在这一点上没有任何线索。

提前致谢!

0 投票
1 回答
321 浏览

qt - PyQt4 - 使子小部件缩小以适应父级和布局

例如,我有一个包含一些 QPixmaps 的网格布局。但是,如果 QPixmap 中的图像比网格布局的单元格大,它们就会溢出并最终相互重叠。如何使它们自动缩小以适应布局?我到处寻找这个答案,但无法弄清楚。请帮忙,谢谢!

0 投票
3 回答
6403 浏览

python - pyside - 如何从 gridLayout 中删除小部件

我在 QT Designer 中构建了一个 ui,然后使用 pyside-uic 将其转换为 python 文件,然后编写了一些代码以编程方式对其进行编辑。换句话说,我有一个按钮Add Row,当单击它时,它将重命名为Remove1并创建另一个按钮名称并将其Add Row添加到布局中。

单击 时Add Row的代码,更改名称和信号/插槽:

单击时的代码Remove,删除选定的按钮:

这工作得很好,直到你添加至少一个然后删除它,下一轮它搞砸了。基本上,当我有两个按钮并删除一个然后尝试添加一个时,它会出现异常。行为不端是指新按钮最终位于旧按钮之上,有时它出现在下方而不是上方。

此外,如果我使用.hide()它所做的功能,它们目前的线条并没有真正重新组织网格布局中的东西。我不太确定我应该使用哪个。

谢谢!

这是产生不良结果的序列:

新的开始 图 1

点击添加后 点击添加后

单击删除后(到目前为止一切正常),然后单击添加(没有明显区别) 删除后 1

第二次点击添加后 在此处输入图像描述

单击 Remove2 后,Remove1 从其下方出现 在此处输入图像描述

“工作”代码示例

0 投票
1 回答
1612 浏览

c++ - 删除其中一个小部件后如何在特定位置设置 QGridLayout

QGridLayout用来加一QPushButton和一QTextEdit。但是每当我隐藏和移除时,QTextEdit widget就会QPushButton出现在QTextEdit.

最初QPushButton是 in position 可以说是 in (0,0)position 。然后在移除时即将到达位置,即在位置。QTextEdit(100,0)QTextEdit QPushButtonQTextEdit(100,0)

在按下删除键时,我正在删除 QTextWidget:

所以我认为我必须设置的位置,QGridLayout以便每次移除后widget它都应该处于正确的位置。

在此处输入图像描述 在此处输入图像描述

0 投票
1 回答
2809 浏览

python - 小部件未显示在网格布局上 (PySide)

我有一些代码在窗口中显示一些小部件。但是,这些小部件不会出现在窗口上:

我是 PySide 布局的新手,因此非常感谢任何帮助。