日本黄色一级经典视频|伊人久久精品视频|亚洲黄色色周成人视频九九九|av免费网址黄色小短片|黄色Av无码亚洲成年人|亚洲1区2区3区无码|真人黄片免费观看|无码一级小说欧美日免费三级|日韩中文字幕91在线看|精品久久久无码中文字幕边打电话

當(dāng)前位置:首頁 > 芯聞號 > 充電吧
[導(dǎo)讀]Drag和Drop是兩個完全不同的動作。Qt中的控件可以作為拖動(drag)的地點,也可以作為松開(drop)的地點,或者同時作為拖動和松開的地點。第一個例子用來說明一個Qt應(yīng)用程序接受另一個程序觸發(fā)

Drag和Drop是兩個完全不同的動作。Qt中的控件可以作為拖動(drag)的地點,也可以作為松開(drop)的地點,或者同時作為拖動和松開的地點。第一個例子用來說明一個Qt應(yīng)用程序接受另一個程序觸發(fā)的拖動事件。該Qt應(yīng)用程序是一個QTextEdit為中央控件的主窗口。當(dāng)用戶從桌面或者一個文件瀏覽器中拖動一個文本文件到Qt程序時松開,程序把文件顯示在QTextEdit控件中。下面是主窗口的定義class MainWindow : public QMainWindow{??? Q_OBJECTpublic:??? MainWindow();protected:??? void dragEnterEvent(QDragEnterEvent *event);??? void dropEvent(QDropEvent *event);private:??? bool readFile(const QString &fileName);??? QTextEdit *textEdit;};?在MainWindow類中,重新實現(xiàn)了QWidget的函數(shù)dragEnterEvent()和dropEvent()。由于這個例子主要用來顯示托拽,主窗口的很多其他功能都省略了。?MainWindow::MainWindow(){??? textEdit = new QTextEdit;??? setCentralWidget(textEdit);??? textEdit->setAcceptDrops(false);??? setAcceptDrops(true);??? setWindowTitle(tr("Text Editor"));}?在構(gòu)造函數(shù)中,我們創(chuàng)建了一個QTextEdit控件,并設(shè)置為中央控件。缺省情況下,QTextEdit接受來自其他應(yīng)用程序拖拽來的文本,把文件名顯示出來。由于drop事件是由子控件向父控件傳播的,通過禁止QTextEdit控件的drop事件,允許主窗口得到drop事件,我們就得到了MainWindow中的整個窗口的drop事件。void MainWindow::dragEnterEvent(QDragEnterEvent *event){??? if (event->mimeData()->hasFormat("text/uri-list"))??????? event->acceptProposedAction();}?任何時候用戶拖動一個對象到一個控件上,函數(shù)dragEnterEvent()都會被調(diào)用。如果在這個事件處理函數(shù)中調(diào)用函數(shù)acceptProposeAction(),說明我們允許用戶把這個對象拖拽到這個控件上。默認情況,控件不接收drag事件。Qt會自動改變光標(biāo)狀態(tài)指示用戶當(dāng)前的控件是否是一個合法的drop地點。在這里我們只允許用戶drag一個文本文件,因此,我們檢查這個這個drag的MIME類型。MIME類型text/uri-list用來保存URL的一個地址列表,可以是文件名,URL(HTTP或者FTP路徑),也可以是其他的全局資源標(biāo)識。標(biāo)準(zhǔn)的MIME類型由IANA(Internet Assigned Numbers Authority)定義,由一個類型名/子類型名組成。MIME類型用于在剪貼板和拖拽使用時區(qū)別不同的數(shù)據(jù)類型,MIME類型列表可以點擊訪問http://www.iana.org/assignments/media-types/得到void MainWindow::dropEvent(QDropEvent *event){??? QList

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除( 郵箱:macysun@21ic.com )。
換一批
延伸閱讀

在嵌入式系統(tǒng)開發(fā)領(lǐng)域,Qt憑借其跨平臺特性、豐富的GUI組件和高效的開發(fā)框架,成為構(gòu)建交互式界面的首選工具之一。對于嵌入式工程師而言,掌握Qt不僅能提升開發(fā)效率,更能為智能設(shè)備、工業(yè)控制、汽車電子等領(lǐng)域的產(chǎn)品帶來更優(yōu)質(zhì)的...

關(guān)鍵字: 嵌入式 QT

在嵌入式系統(tǒng)開發(fā)領(lǐng)域,Qt憑借其跨平臺特性和豐富的功能庫,已成為構(gòu)建高性能圖形用戶界面(GUI)的首選工具之一。對于嵌入式工程師而言,掌握Qt的多種開發(fā)方式不僅能提升開發(fā)效率,還能增強對復(fù)雜嵌入式系統(tǒng)的控制能力。

關(guān)鍵字: 嵌入式系統(tǒng) QT

在嵌入式Linux圖形界面開發(fā)中,Qt框架憑借其跨平臺特性與豐富的組件庫成為首選方案。其核心的信號槽機制為對象間通信提供了高效解耦方案,但在資源受限的嵌入式場景中,不當(dāng)使用可能導(dǎo)致性能瓶頸。本文從機制原理出發(fā),結(jié)合典型場...

關(guān)鍵字: QT 嵌入式Linux 信號槽

隨著數(shù)字孿生技術(shù)的發(fā)展 , 三維模型的顯示與控制技術(shù)應(yīng)用需求 日益迫切 , 當(dāng)前在嵌入式環(huán)境下實現(xiàn)復(fù)雜模型的三維顯示與控制仍存在渲染效率低 、交互控制復(fù)雜 、控制延遲高 、可移植性差等問題 。針對上述問題 ,提出了一種基...

關(guān)鍵字: 0SG QT 三維可視化 模型交互控制 RK3588平臺

Qt是一款由Qt公司(前身為Trolltech)開發(fā)的跨平臺應(yīng)用程序框架。它提供了豐富的功能,包括圖形用戶界面、數(shù)據(jù)庫操作、網(wǎng)絡(luò)通信等,使得開發(fā)者能夠更加便捷地創(chuàng)建高質(zhì)量、可移植性強的應(yīng)用程序。Qt采用C++編寫,同時也...

關(guān)鍵字: QT RTOS

摘 要 :為解決制鞋行業(yè)中噴膠精度不高、靈活性差、生產(chǎn)效率低的問題,設(shè)計一種基于機器視覺的鞋模噴膠系統(tǒng)。該系統(tǒng)硬件由工業(yè)攝像頭、工控機及路由器構(gòu)成,軟件則采用圖像識別庫 OpenCV 與圖形界面應(yīng)用程序開發(fā)框架 Qt 編...

關(guān)鍵字: 機器視覺 圖像處理 鞋模 噴膠 OpenCV QT

嵌入式系統(tǒng)是指以應(yīng)用為中心、以計算機技術(shù)為基礎(chǔ),軟件硬件可裁剪、適應(yīng)應(yīng)用系統(tǒng)對功能、可靠性、成本、體積、功耗嚴格要求的專用計算機系統(tǒng)。

關(guān)鍵字: QT 嵌入式 C++

摘 要:倉儲作為物流與供應(yīng)鏈的核心環(huán)節(jié),對食品安全的控制起著至關(guān)重要的作用。溫濕度是影響糧食倉儲過程安全與品質(zhì)的重要因素。文中使用無線傳感網(wǎng)絡(luò)進行數(shù)據(jù)采集,通過Qt平臺設(shè)計軟件系統(tǒng),并借助數(shù)據(jù)庫進行數(shù)據(jù)存儲與分析處理,實...

關(guān)鍵字: 成品糧 倉儲 溫濕度監(jiān)測 無線傳感網(wǎng)絡(luò) QT

在此部件上繪制行號,并將其放置在CodeEditor的viewport()的左邊距區(qū)域上,QWidget類也可以幫助我們對其內(nèi)容進行滾動。

關(guān)鍵字: QT 代碼編輯器

不管是Qt新手還是開發(fā)過qt的群體來說,對Qt Designer、Qt Quick Designer、Qt Creator這幾個應(yīng)用程序肯定是熟悉的。

關(guān)鍵字: QT IDE C
關(guān)閉