zoukankan      html  css  js  c++  java
  • Qt拖拽事件

    mainwindow.h

    #ifndef MAINWINDOW_H
    #define MAINWINDOW_H
    
    #include <QMainWindow>
    #include <QDragEnterEvent>
    #include <QDropEvent>
    #include <QtDebug>
    #include <QMimeData>
    
    QT_BEGIN_NAMESPACE
    namespace Ui { class MainWindow; }
    QT_END_NAMESPACE
    
    class MainWindow : public QMainWindow
    {
        Q_OBJECT
    
    public:
        MainWindow(QWidget *parent = nullptr);
        ~MainWindow();
    
    protected:
        // 重写拖拽事件
        void dragEnterEvent(QDragEnterEvent *event);
        // 重写放下事件
        void dropEvent(QDropEvent *event);
    
    private:
        Ui::MainWindow *ui;
    };
    #endif // MAINWINDOW_H
    

    mainwindow.cpp

    #include "mainwindow.h"
    #include "ui_mainwindow.h"
    
    MainWindow::MainWindow(QWidget *parent)
        : QMainWindow(parent)
        , ui(new Ui::MainWindow)
    {
        ui->setupUi(this);
        // 接受drop事件
        this->setAcceptDrops(true);
    }
    
    MainWindow::~MainWindow()
    {
        delete ui;
    }
    
    void MainWindow::dragEnterEvent(QDragEnterEvent *event){
        // 根据mimeData选择是否允许放下的行为
        if(event->mimeData()->hasFormat("text/uri-list")){
            event->acceptProposedAction();
        }
    
    }
    
    void MainWindow::dropEvent(QDropEvent *event){
        // 获取文件地址
        QString url = event->mimeData()->urls().first().toLocalFile();
        qWarning()<<url<<endl;
    }
    

      

  • 相关阅读:
    GET 请求和 POST 请求
    爬虫
    模板继承
    静态文件配置
    终端cmd创建django
    商城商品分类导航效果
    css样式
    视图部分
    django初识和路由
    【源码分析】cocos2dx的Action
  • 原文地址:https://www.cnblogs.com/navysummer/p/14239897.html
Copyright © 2011-2022 走看看