gpt4 book ai didi

qt - 如何在 Qt 中解码 "application/x-qabstractitemmodeldatalist"以进行拖放?

转载 作者:行者123 更新时间:2023-12-03 19:55:38 25 4
gpt4 key购买 nike

我已经创建了一个 QTreeWidget 的子类,我也希望能够从另一个树小部件中拖动项目(尽管我想自己处理插入),以及从 QListWidget 中拖动项目。

我已经在我的类中覆盖了 dropEvent 方法,看起来我从 QTreeWidget 获取的数据的 mimetype 是 application/x-qabstractitemmodeldatalist,我如何解码它以从树中取出项目?

最佳答案

您可以按如下方式对其进行解码:

QByteArray encoded = qMimeData->data("application/x-qabstractitemmodeldatalist");
QDataStream stream(&encoded, QIODevice::ReadOnly);

while (!stream.atEnd())
{
int row, col;
QMap<int, QVariant> roleDataMap;
stream >> row >> col >> roleDataMap;

/* do something with the data */
}
QMap<int, QVariant> QAbstractItemModel::itemData(index) 返回的内容用于表示 (row, col) 的索引.

关于qt - 如何在 Qt 中解码 "application/x-qabstractitemmodeldatalist"以进行拖放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1723989/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com