久久国产成人av_抖音国产毛片_a片网站免费观看_A片无码播放手机在线观看,色五月在线观看,亚洲精品m在线观看,女人自慰的免费网址,悠悠在线观看精品视频,一级日本片免费的,亚洲精品久,国产精品成人久久久久久久

分享

QML總結(jié)(下)--引用網(wǎng)上資源

 黃$金 2011-10-30

 

 

QML調(diào)研續(xù)

2011.6.24

 

 

1.數(shù)據(jù)類型與視圖...................................... 2

1.1 列表視圖ListView示例........................... 2

1.2網(wǎng)格視圖 GridView示例........................... 3

1.3路徑視圖 PathView示例........................... 6

1.4 Flickable...................................... 7

2.QML與QT/C++交互.................................... 7

1.示例一:QML調(diào)用C++中設(shè)置好的元素................. 8

2.示例二:......................................... 9

3. QML程序打包運(yùn)行................................... 13

 

 

 

 

 

 

 

1.數(shù)據(jù)類型與視圖

  QML使用了與QtModel-View類似的結(jié)構(gòu),即模型—視圖結(jié)構(gòu),。模型可以是QML的簡(jiǎn)單數(shù)據(jù),,或者復(fù)雜的C++數(shù)據(jù)。具體有:

     QML: ListModel, XmlListModel, VisualItemModel

     C++: QAbstractItemModel, QStringList, QList<QObject*>

 

 視圖顯示模型提供的數(shù)據(jù),,主要有:ListView, GridView, PathView

 Model定義好數(shù)據(jù),,通過Delegate來描述Model中每條數(shù)據(jù)在View具體顯示的控件,。

 

 1.1 列表視圖ListView示例

 

運(yùn)行效果圖:

 

 1.2網(wǎng)格視圖 GridView示例

 

 

運(yùn)行效果圖:

 

 

 

1.3路徑視圖 PathView示例

 

 

 

 

 

 1.4 Flickable

 可以讓它的孩子元素可以被拖拽和滾動(dòng),但卻不用創(chuàng)建一個(gè)MouseArea或者處理鼠標(biāo)事件,。好處:Flickable界面很容易通過屬性配置,,flickDirection, flickDeceleration,horizontalVelocity, verticalVelocity,boundsBehavior, 很多QML元素默認(rèn)是flickable

 

 

2.QMLQT/C++交互

 

具體描述參見上一個(gè)調(diào)研報(bào)告,以下是具體示例,。

1.示例一:QML調(diào)用C++中設(shè)置好的元素

 

 

運(yùn)行結(jié)果:

 

 

2.示例二:

 

 

 

 

 

 

 

運(yùn)行結(jié)果:

 

 

 

 

3.QML程序打包運(yùn)行

  QT有動(dòng)態(tài)編譯和靜態(tài)編譯之分,。

  動(dòng)態(tài)引用編譯,是指相關(guān)的庫,,以dll的形式引用庫。動(dòng)態(tài)編譯的Exe程序尺寸比較小,,因?yàn)橄嚓P(guān)的庫都沒有包含進(jìn)來,。當(dāng)然,程序發(fā)布的時(shí)候,,還要把相關(guān)的庫也一并發(fā)布出去,。
 
靜態(tài)引用編譯,是指把相關(guān)的庫也一并引入Exe文件,。這是程序的尺寸就會(huì)很大,,不過,程序發(fā)布就會(huì)變得簡(jiǎn)單很多,。

 

  TipsQT的靜態(tài)編譯的配置網(wǎng)上有各種各樣的方法,,我試了好幾個(gè),最終成功了,。過程相當(dāng)麻煩,,好像也沒有官方的說法,所以就挨個(gè)試,。

  以下是具體步驟:

 

首先是設(shè)置變量:
set QTDIR=%Dir%
set PATH=%PATH%;%QTDIR%\bin
set QMAKESPEC=win32-msvc2008
"C:\Program Files\Microsoft Visual Studio 8\VC\vcvarsall.bat"" x86
配置makefile
configure -release -static -fast -qt-sql-odbc -qt-sql-sqlite
然后就是o,,y(這個(gè)地方會(huì)很有可能過不去,我試了三種不同的方法才過去的,。主要原因我分析有以下幾種:環(huán)境變量配置出錯(cuò),,出來上面幾個(gè)必須的,qt下的lib,、include,、bin目錄都要配置上。再有就是vsbin目錄也要配置上,。)
nmake
然后就是漫長(zhǎng)的等待(我是用了兩個(gè)小時(shí),,網(wǎng)上說有五個(gè)小時(shí)的)
然后發(fā)發(fā)現(xiàn)lib下果然只有一大堆lib文件了,而且每個(gè)lib文件的尺寸都在M以上,,似乎已經(jīng)成功了,。然后我們?cè)诎惭b了qt-vsintegrationVC2008新建一個(gè)Qt工程,,然后編譯一個(gè)release版本。

這樣生成的exe就可以直接在其他機(jī)子上運(yùn)行了,。

 

但是有另外一個(gè)問題:這都是網(wǎng)上針對(duì)qt說的,,我嘗試過后,對(duì)于qml文件還是不能打包進(jìn)exe文件,,只能是exe文件和qml文件一起才能運(yùn)行,。暫時(shí)還沒找到解決辦法。但是可以在其他機(jī)子上點(diǎn)擊exe直接運(yùn)行了,。

 

 

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn),。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式,、誘導(dǎo)購買等信息,謹(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)遵守用戶 評(píng)論公約

    類似文章 更多