0

所以我试图弄清楚如何设计我的线框。它本质上只是两个 QScrollArea,一个在另一个之上,每个都有一个标题(和标题内的按钮)。

在滚动区域的一种设计中,我希望有类似于 QListWidgetItems 列表的项目,但是它们在左侧会有一个小图像,在右侧有描述

在滚动区域的另一种设计中,我只想要填充颜色或图案/图像的矩形。它们都需要可选择并发出点击信号。

我应该采用 Class 方法,并创建一个新类来充当自定义小部件吗?实现 QWidget,并计算应该放置所有内容的位置,更改鼠标事件的背景颜色/不透明度等?或者我应该采取另一种方法吗?根据我的阅读,创建自定义小部件绝对是一件痛苦的事情。

下面是我想要设计的线框 - 是否有任何可用的东西可以完成这项工作?如果没有,我应该如何设计这些?我考虑过使用几个 QListWidgets 或 QTreeWidgets,但它们无法完成我正在寻找的一切。

自定义线框

4

2 回答 2

1

我选择了不同的方法。我将使用 QGraphicsView 并将我自己的对象绘制到其中,而不是列表或 QScrollArea。我需要它来处理更多交互(左键和右键单击,其中的小按钮等)。当我更好地理解它时,我可能会将它实现到 QListView 中,但现在,这将起作用。

于 2012-01-18T22:54:45.737 回答
0

我认为您可以创建自己的基于 QWidget 的控件。对于标题部分,只需拖动标签和按钮,其余部分,您可以使用带有自定义单元格的 QListWidget 或 QListView

于 2012-01-03T03:20:48.053 回答