免费高清特黄a大片,九一h片在线免费看,a免费国产一级特黄aa大,国产精品国产主播在线观看,成人精品一区久久久久,一级特黄aa大片,俄罗斯无遮挡一级毛片

分享

Qt文件拖放操作

 ylsnData 2017-12-28

文件拖放技術(shù)是編程中的一項(xiàng)重要的技術(shù),可以快速的打開(kāi)文件,復(fù)制文件等

本文主要運(yùn)用Qt中中的文件拖放事件實(shí)現(xiàn)圖片的顯示

1頭文件
?#ifndef MYLABLE_H
#define MYLABLE_H

#include <QLabel>
#include <QDragEnterEvent>
#include <QMimeData>
#include <QString>
#include <QDebug>


class myLable : public QLabel
{
  //  Q_OBJECT
public:
    explicit myLable(QWidget *parent=0);
protected:
    void dragEnterEvent(QDragEnterEvent *event); //拖動(dòng)事件進(jìn)入
    void dropEvent(QDropEvent *);  //鼠標(biāo)在本窗口放下
private:
    QString fileName;

};

#endif // MYLABLE_H

2源文件


#include "mylable.h"

myLable::myLable(QWidget *parent):
    QLabel(parent)
{
    fileName.clear();
    this->setAcceptDrops(true); //設(shè)置接收拖動(dòng)事件
}

//鼠標(biāo)拖動(dòng)進(jìn)入事件
void myLable::dragEnterEvent(QDragEnterEvent *event)
{
    QString path=event->mimeData()->text(); //得到路徑
    if(fileName.isEmpty())
    {
        fileName=path;
    }
    else if(fileName!=path)
    {
        fileName=path;
    }
    event->accept();  //接收事件
}
//鼠標(biāo)放下事件
void myLable::dropEvent(QDropEvent *)
{
    if(fileName.isEmpty())
        return;
    //將圖片設(shè)置到標(biāo)簽中
    fileName.replace("file:///",""); //
    this->setPixmap(fileName);
    this->setScaledContents(true);
    qDebug()<<"fileName:"<<fileName;
}


源碼文件:

拖放源碼

總結(jié):主要是用到Qt中的兩個(gè)拖放事件,當(dāng)將文件拖動(dòng)到本窗口時(shí),就會(huì)記錄拖動(dòng)的文件路徑,當(dāng)鼠標(biāo)在本窗口放下時(shí),就會(huì)打開(kāi)所對(duì)應(yīng)的文件路徑。

博文索引  持續(xù)更新中。。。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多