Qt:我如何让QWidget显示在我的mainWindow的多个位置?
问题描述:
我有一个QMainWindow
与大量的图表(我对这些使用QCustomPlot
)。结果,每张图的大小都不可避免地相当小。本页面中的所有图表均绘制在QStackedWidget
的第1页上。Qt:我如何让QWidget显示在我的mainWindow的多个位置?
要为每个图形(每次一个)提供更清晰的视图,我想在用户单击一个图形时显示更大的图形视图。 一个可能的解决方案是在QStackedWidget
上有第二个页面,其中可以显示较大的图表。问题是如何将选定的图表分配到QStackedWidget
的第2页?
或者,是否有更好的方法来放大特定的QWidget
,使它占据主窗口的端到端?
如何让QStackedWidget
的第2页直接从所选图表更新其内容?
有没有一个例子能让我明白我应该做什么?
答
除了链接的问题,在这一点上,你可能会关注过早的微优化。较小的图形将以更低的分辨率呈现,所以如果你炸掉它,它看起来不会太好。
如果这是您自己的自定义小部件的复杂绘图,您可以轻松绘制到像素图上,然后将大像素图绘制到大图上,并将小图绘制为小图。但是,再次,你会为所有这些小图表做很多额外的绘图工作,因为他们很可能会到达中心位置。你可以优化,但会增加复杂性。
它仍然可以为QCustomPlot
做到这一点,但它不会那么容易,我怀疑这样做的努力将会看到有价值的回报。因此,只需在需要时创建一个额外的大图,在遇到问题之前不必担心性能。这个差别可以忽略不计,因为图表不太复杂。您将不会从另一个图更新一个图,您只需在两个图中使用相同的数据集。