QTableView,如何更改拖动多项显示
我有一个QTableView和我自己实现的QAbstractItemModel,我可以在其中拖放多个项目。我的问题是,当拖动项目并试图将它们拖放到目标单元格中时,用户并不清楚结果会是什么。例如,我有以下内容,但我更喜欢类似于默认窗口显示的内容,这会使所有3个项目都像一个项目:
我的Qt表
vs
Windows拖放文件夹
解决方案
以thistutorial为引用,覆盖MousePressEvent方法,并在QDrag:
中放置一个新的QPixmapvoid mousePressEvent(QMouseEvent *event){
if (event->button() == Qt::LeftButton){
QDrag *drag = new QDrag(this);
drag->setMimeData(new QMimeData());
drag->setPixmap(QPixmap("image.png"));
drag->exec();
}
QTableView::mousePressEvent(event);
}
输出:
相关文章