c++ - Qt - QScrollArea - 将添加的小部件对齐到顶部

标签 c++ qt qscrollarea

我有一个 150x450 QScrollArea,里面有一个 VBoxLayout。我必须动态地(在播放视频时,逐帧)添加未指定数量的 QLabel,从无到数百不等。

当我开始添加时,QLabel 开始恰好出现在中间。然后当另一个出现时,它们移动,所以中间正好在它们之间。等等等等。

我怎样才能让它们从最上面出现然后就往下掉?没有移动位置和摆动?

最佳答案

在应用程序中拥有数百个标签并将它们布置在滚动区域中会消耗大量内存和性能。另一方面,Qt 有许多专用类来处理滚动区域中的多个项目,例如:QTableWidgetQListWidgetQTableView 等。所有这些类都旨在处理项目行并具有所有相关功能。使用它们将使您无需关心布局、滚动等。

关于c++ - Qt - QScrollArea - 将添加的小部件对齐到顶部,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30800551/

相关文章:

c++ - 如何在 Xcode 中包含 C++ 库

c++ - 返回指向继承类 C++ 的指针

c++ - QScrollArea 缺少滚动条

qt - 将小部件添加到 ScrollArea

c++ - 传递列表

c++ - wxWidgets 在关闭应用程序时崩溃

c++ - 带有顶点着色器和 QGLShaderProgram 的 OpenGL HeightMap

c++ - Qt 使用 exec() 循环测试 QMessageBoxes(或通用 QDialog)

resize - 使 QTreeView 自动调整内容大小

c++ - DnsQuery 无法获取某些特定 FQDN 上的有效地址