Qt:接受拖放,简单应用

来源:互联网 发布:域用户安装软件权限 编辑:程序博客网 时间:2024/05/20 18:18

头文件:

mainwindow.h

#ifndef MAINWINDOW_H#define MAINWINDOW_H#include <QMainWindow>#include <QtGui>    //包含GUI界面的相关函数namespace Ui {class MainWindow;}class MainWindow : public QMainWindow{    Q_OBJECTpublic:    explicit MainWindow(QWidget *parent = 0);    ~MainWindow();private:    Ui::MainWindow *ui;private:    void dragEnterEvent(QDragEnterEvent *event);    //拖动    void dropEvent(QDropEvent *event);              //放下};#endif // MAINWINDOW_H
源文件:

main.cpp

#include "mainwindow.h"#include <QApplication>int main(int argc, char *argv[]){    QApplication a(argc, argv);    MainWindow w;    w.show();    return a.exec();}
mainwindow.cpp

#include "mainwindow.h"#include "ui_mainwindow.h"MainWindow::MainWindow(QWidget *parent) :    QMainWindow(parent),    ui(new Ui::MainWindow){    ui->setupUi(this);    setAcceptDrops(true);//必须设置为接受拖放}MainWindow::~MainWindow(){    delete ui;}void MainWindow::dragEnterEvent(QDragEnterEvent *event){    if(event->mimeData()->hasFormat("text/plain"))    {        event->acceptProposedAction();    }    //    QStringList list = event->mimeData()->formats();//接受所有格式    //    for(int i = 0;i < list.size();i++)    //    {    //        QString text = list.at(i);    //        qDebug() << "Formats:" << text;    //    }}void MainWindow::dropEvent(QDropEvent *event){    if(event->mimeData()->hasFormat("text/plain"))    {        event->acceptProposedAction();        QString txt = event->mimeData()->text();        qDebug() << txt;    }}
设计界面:(QLabel)





原创粉丝点击