在两个 QTableView 之间拖放

Posted

技术标签:

【中文标题】在两个 QTableView 之间拖放【英文标题】:Drag and Drop between two QTableView 【发布时间】:2012-05-02 20:33:15 【问题描述】:

我有两个 QTableView,一个有 10 行,另一个是空的。我想将一行从第一个表拖到第二个表(空表)。

leftTableView->setModel(leftModel);
leftTableView->resizeColumnsToContents();
leftTableView->setDropIndicatorShown(true);
leftTableView->setDragDropMode(QAbstractItemView::DragOnly);

rightTableView->setModel(rightModel);
rightTableView->resizeColumnsToContents();
rightTableView->setDropIndicatorShown(true);
//rightTableView->setAcceptDrops(true);
rightTableView->setDragDropMode(QAbstractItemView::DropOnly);

rightModel 中,我创建了insertRow 函数来执行此操作:

DATA data;

data.hex  = "02";
data.name = "Command";
data_list->insert(row, data);
emit layoutChanged();
return true;

我做错了什么吗?有人可以指导我如何实现拖放吗?

谢谢

【问题讨论】:

【参考方案1】:

QT Demos 中有一个非常好的拖放示例。您可以找到这些演示是 QT 源。你也可以在这里Drag and Drop Examples找到他们。

【讨论】:

请链接到一些东西。 这些演示在 QT 源代码中。也许你可以试试这个qt-project.org/doc/qt-4.8/examples-draganddrop.html :)

以上是关于在两个 QTableView 之间拖放的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Pyqt4 中设置 QTableView 标头名称

如何在pyqt4的右侧对齐qtableview行?

qt 中Qtable widget中如何加一个表

QT - QTableView removeRow() 崩溃

Qt入门系列开发教程高级控件篇QTableView表格视图

QT QTableView(基于QStandardItemModel用法)操作详解