QT學習筆記 拖放操作

2021-10-08 22:55:30 字數 1386 閱讀 7254

qt具備強大的拖放機制。拖放操作分為drag(拖動)和drop(放下)。跟拖放相關的類是qdragenterevent,也是繼承自qevent

當資料被拖動會被儲存為mime型別的資料。qt使用qmimedata類表示mime

拖動事件:

[

virtual

protected

]void qwidget::

dragenterevent

(qdragenterevent *event)

放下事件:

[

virtual

protected

]void qwidget::

dropevent

(qdropevent *event)

新建工程,在ui設計介面放置乙個text browserwidget類中新增拖動和放下事件:

class

widget

:public qwidget

;

重寫拖動和放下事件
#include

#include

#include

#include

#include

void widget::

dragenterevent

(qdragenterevent *event)

else

}void widget::

dropevent

(qdropevent *event)

qtextstream filein

(&file)

;//建立文字流物件

ui->textbrowser-

>

settext

(filein.

readall()

);//將文字內容顯示到text browser中}}

}

設定接受拖放事件

必須接受拖放事件才能進行拖放

widget::

widget

(qwidget *parent)

://建構函式

qwidget

(parent),ui

(new ui::widget)

Qt學習 簡單的檔案拖放操作

下面來看乙個很簡單的例子,就是將桌面上的.txt檔案拖入到text edit中。新建 qt widgets應用,基類選擇 qmainwindow,並向介面上拖入乙個text edit部件 protected void dragenterevent qdragenterevent event 拖動進入...

3Qt檔案拖放操作

檔案拖放技術是程式設計中的一項重要的技術,可以快速的開啟檔案,複製檔案等 1標頭檔案 ifndef mylable h define mylable h include include include include include class mylable public qlabel endif...

Qt之拖放程式

拖放是應用程式內或者多個應用程式之間傳遞資訊的一種直觀的操作方式。除了為剪貼簿提供支援之外,通常還提供資料的移動和複製功能。拖放操作包括兩個截然不同的動作 拖動 放下。qt視窗部件可以作為拖動點 drag site 放下點 drop site 或者同時作為拖動點和放下點。下面介紹如何讓乙個qt應用程...