C++ 是否将存储在结构中的值打印到Qt表中?

C++ 是否将存储在结构中的值打印到Qt表中?,c++,qt,C++,Qt,我有这样一个结构或链表: typedef struct Node { int k; char *mesage; struct Node *next; } node; 我想输入k的值,打印它,然后将打开一个窗口屏幕,以表格的形式显示所有输入值,该表格将由Qt库创建。您需要重新实现,然后使用访问它 编辑:我刚刚注意到你的模型看起来是基于树的,而不是基于表的,所以你真的应该使用。如果您的数据实际上是一棵树,那么这不会太痛苦,因为您可以使用大多数方法的默认实现。当您试图使非树数

我有这样一个结构或链表:

typedef struct Node
{
    int k;
    char *mesage;
    struct Node *next;
} node;
我想输入
k
的值,打印它,然后将打开一个窗口屏幕,以表格的形式显示所有输入值,该表格将由Qt库创建。

您需要重新实现,然后使用访问它

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


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

您应该查看QTableWidget(),谢谢,但它有助于创建表。我想将存储在结构中的数据与要输入到表@piwii中的值链接,如果它是表而不是树,那么您最好将类/结构称为
Row
。至少对我来说,Node意味着一个层次结构。你能帮我写一个代码吗?包括我上面定义的一个基本结构,然后用QT@Styne666No创建一个表。这不是树型的东西。实际上,我将从网络类型中获取数据。数据将有两到三个字段,如ID(如我在结构中提到的k),消息,可能还有一个字段。然后我想要的是使用QT以表格格式显示这些值。因此,我想创建一个结构,首先将从网络获取的值保存到其中,然后将这些值传输到表格值中。我将从网络获取的这些数据的数量和大小可以是500-600或更多因此,表的大小也会自动增加@STYNE666你能为这个写一个完整的代码吗,包括结构,上面你写的QT表部分,一个主函数,我也可以通过它通过cin输入k和消息值。如果你这样实现的话,表的标题可以是ID和message@STYNE666,然后我不认为通过视图更改数据会更新
node.k
。要做到这一点,您可以添加一个带有指向每个节点的指针的隐藏列,连接到
itemChanged(QStandardItem*item)
信号,然后更新您需要的节点。不,这不是树型的事情。实际上,我将从网络类型中获取数据。数据将有两到三个字段,如ID(如我在结构中提到的k),消息,可能还有一个字段。然后我想要的是使用QT以表格格式显示这些值。因此,我想创建一个结构,首先将从网络获取的值保存到其中,然后将这些值传输到表格值中。我将从网络获取的这些数据的数量和大小可以是500-600或更多因此,表的大小也会自动增加@使用
model->appendRow(QStandardItem*)
可以“自动”增加表的大小。如果您需要在一行中添加多个项目,您可以使用
model->appendRow(QList)
。请您为此编写一个完整的代码,包括结构、上面由您编写的QT表部分,以及一个主函数,通过该函数我将通过cin输入k和消息值。表的标题可以是ID和message@hank
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);