我QCustomPlot
用来绘制条形图。有两个这样的条形图水平排列在a内QSplitter
(可以拖动)。在水平拖动拆分器时,条形图会调整大小并缩放到轴标签开始重叠的点。我有一个QWidget
包含QScrollArea
最终包含情节的父母。此小部件已添加到QSplitter
.
QWidget* topLeftParent = new QWidget;
topLeftParent->setLayout(new QVBoxLayout);
QScrollArea *topLeftScrollArea = new QScrollArea(this);
topLeftScrollArea->setWidget(energyGraph->GetPlot());
topLeftScrollArea->setWidgetResizable(true);
topLeftScrollArea->setFrameShape(QFrame::NoFrame);
topLeftParent->layout()->addWidget(topLeftScrollArea);
m_pTopLeftHorizontalSplitter->setMinimumWidth(500);
m_pTopLeftHorizontalSplitter->addWidget(topLeftParent);
现有行为:
在水平拖动拆分器时,条形图水平扩展/收缩,直到轴刻度标签重叠,最终以非常小的宽度值出现,水平滚动条出现,这是无用的。调整窗口大小也是如此。
要求的行为
但是,我寻求不同的行为。我希望条形图可以水平滚动,而不需要在拖动拆分器时调整它们的大小,即向左/右拖动拆分器应该显示更多/更少的图表,而不是调整它们的大小
查询
- 如何指定条形图应具有最小大小并根据 x 轴上的刻度数从该大小扩展?
- 如何阻止情节自动扩大/缩小?
到目前为止我尝试过的
我尝试为情节设置最小尺寸,但它不起作用。我还尝试将拆分器的拉伸因子指定为 0,但这也没有效果,即在滚动条出现得太晚的两种情况下,行为都是自动调整条形图的大小。