QListWidget
拖拽更改顺序
先加入这个类(重载,实现拖拽改变list顺序);
然后对于想要用这个重载类的类,构造函数加上("ui->widget_todo",建议在你想添加这个QListWidget地方先建一个widget,我这里取名是widget_todo,就是在这个里面添加)
listWidget = new YYListWidget(ui->widget_todo);
QListWidget有的函数重载类一样使用;
下面是类详细代码(类忘记是转载谁的博客的)
yylistwidget.cpp
#include "yylistwidget.h"
#include <QApplication>
#include <QDrag>
#include <QKeyEvent>
#include <QMimeData>
#include "QDebug"
YYListWidget::YYListWidget(QWidget *parent) : QListWidget(parent)
{
this->setAcceptDrops(true);
this->setDragEnabled(true);
}
YYListWidget::~YYListWidget()
{
}
yylistwidget.h
#ifndef YYLISTWIDGET_H
#define YYLISTWIDGET_H
#include <QWidget>
#include "QListWidget"
class YYListWidget : public QListWidget
{
Q_OBJECT
public:
explicit YYListWidget(QWidget *parent = Q_NULLPTR);
~YYListWidget();
void dropEvent(QDropEvent *event);
void performDrag();
signals:
public slots:
private:
};
#endif