-2

我有这样的结构或链表:

typedef struct Node
{
    int k;
    char *mesage;
    struct Node *next;
} node;

我想输入 的值k,打印它,然后将打开一个窗口屏幕,以 Qt 库创建的表格的形式显示所有输入值。

4

2 回答 2

0

您需要重新实现QAbstractTableModel然后使用QTableWidget来访问它。

编辑:我刚刚注意到您的模型看起来基于树而不是基于表,因此您应该真正使用QAbstractItemModelQTreeView。如果您的数据确实是一棵树,那么这不会太痛苦,因为您可以使用大多数方法的默认实现。当您试图使非树数据看起来像一棵树时,它会变得很烦人。最好在开始之前通读Qt 中的模型/视图编程文档

最好的代码示例是 Qt Creator 附带的示例(例如,这个)。

于 2012-06-19T07:13:59.667 回答
0
Node node;

node.k = 5;

QStandardItemModel* model = new QStandardItemModel(this);

QStandardItem* item = new QStandardItem();
item->setData(node.k, Qt::DisplayRole);

model->appendRow(item);

QTableView* table = new QTableView(this);
table->setModel(model);
于 2012-06-19T07:20:38.197 回答