正在从GridLayout中删除单元格

Removing cell from GridLayout

本文关键字:删除 单元格 GridLayout      更新时间:2023-10-16

我在GridLayout中放置了两个QSlider,如下所示:

layout = new GridLayout();
layout->addWidget(slider_horizontal, 0, 1, 1, 2);
layout->addWidget(slider_vertical, 1, 0, 2, 1);

这形成了一个2x2矩阵,因为它们都放置在不同的行和列中。我想要的是删除右下角未使用的单元格(位置:1,1)。

问题是,这个单元格发生在我的QGraphicsView中,使该区域不可选择。

后来我做了这个:

sliderWidget = new QWidget(graphicsView);
sliderWidget = setLayout(layout); 

其中graphicsView是QGraphicsView。

我的第一个想法是这是不可能的,我必须解决这个问题。但我想和你核实一下这是否可行。

我还想知道是否有其他方法可以使未使用的单元格不出现在我的图形视图中。

把整个图形视图放在右下角的单元格里怎么样?这个滑块会在图形视图之外,但通常这不会是个问题。

不确定你是否真的只想要一个显示大场景一小部分的视图的滚动条,在这种情况下,你可以使用这些:

QGraphicsView::setVerticalScrollBarPolicy(...)
QGraphicsView::setHorizontalScrollBarPolicy(...)