1

我有一个使用从 QTableView 继承的控件显示的网格。现在网格从左到右显示,然后随着事情溢出,它像这样进入下一行

 -----------
| 1 | 2 | 3 |
|------------
| 4 |   |   |
|------------
|   |   |   |
 -----------

但我希望它先从上到下,然后随着事情溢出,它应该像这样进入下一列

 -----------
| 1 | 4 |   |
|------------
| 2 |   |   |
|------------
| 3 |   |   |
 -----------

我主要是 .Net 开发人员,使用 .net winforms 控件非常简单,但我该如何做QTableView到这一点?

谢谢

4

1 回答 1

3

显示的数据是您的模型的函数。改变行为的最好方法是创建一个交换行和列的代理QAbstractTableModel 。这将有多复杂取决于您当前的模型。听起来您几乎有一个线性模型,并且视图只是以类似表格的方式呈现它,在这种情况下,您可能使用了错误的模型。

如果您确实有线性模型,请考虑使用QAbstractListModelQListView。然后 QListView 有一个flow属性,允许您在从左到右和从上到下之间进行选择。

于 2011-10-11T19:01:00.107 回答