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