QT declarative UI 初探(二)
說明一下,我的作業系統是win7 64位。
接上文,兩個疑惑讓我很鬱悶,有種雲深不知處的感覺。於是繼續翻閱文件,經過幾番查詢,我只好確定qml.exe就是文件中所提到的qmlviewer。對於第二個疑問,繼續學習。
首先,讀到這樣一段文件(位置QtDeclarative Module):
To include the definitions of the module’s classes, use the following directive:
#include
To link against the module, add this line to your qmake .pro file:
QT += declarative
For more information on the Qt Declarative module, see the Declarative UI documentation.
然後,經過我不懈的努力,在examples/declarative/objectlistmodel 這個示例中找到了線索:
objectlistmodel的pro檔案如下(省略無關內容):
TEMPLATE = app
TARGET = objectlistmodel
QT += declarative
# Input
SOURCES += main.cpp \
dataobject.cpp
HEADERS += dataobject.h
RESOURCES += objectlistmodel.qrc
objectlistmodel的main.cpp檔案:
#include
#include
#include
#include
#include
#include
#include “dataobject.h”
/*
This example illustrates exposing a QList
model in QML
*/
int main(int argc, char ** argv)
{
QApplication app(argc, argv);
QDeclarativeView view;
QList
dataList.append(new DataObject(“Item 1″, “red”));
dataList.append(new DataObject(“Item 2″, “green”));
dataList.append(new DataObject(“Item 3″, “blue”));
dataList.append(new DataObject(“Item 4″, “yellow”));
QDeclarativeContext *ctxt = view.rootContext();
ctxt->setContextProperty(“myModel”, QVariant::fromValue(dataList));
view.setSource(QUrl(“qrc:view.qml”));
view.show();
return app.exec();
}
看到了吧,原來是用QDeclarativeView這個東東來裝載ui的。。。
哈哈,於是我們可以自己來寫一個app,把demos/declarative/twitter這個demo給編譯成一個exe檔案了。
下面是我的main中的程式碼:
QApplication a(argc, argv);
QDeclarativeView vi;
vi.setSource(QUrl(“twitter.qml”));
vi.setResizeMode(QDeclarativeView::SizeRootObjectToView);
vi.show();
return a.exec();
ok,第一步我們終於邁出了。下面我們就可以開始慢慢享受qml的滋味了。。。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22785983/viewspace-662977/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- QT declarative UI 初探(一)QTUI
- 【Qt】UI顯示中文QTUI
- Declarative Shadow DOM
- Django初探(二)Django
- How to use Qt Designed Ui fileQTUI
- QT mainwindow UI介面新增工具欄QTAIUI
- SAP UI5 的宣告式初始化 Component 定義(Declarative API for Initial Components)UIAPI
- Asyncdb(二):Java IO 初探Java
- 初探data pump export (二)Export
- UI自動化測試框架Cypress初探UI框架
- MongoDB初探第二篇MongoDB
- Declarative programming宣告性程式設計程式設計
- Qt DLL總結【二】-建立及呼叫QT的 DLLQT
- SAP Batch Derivation功能初探之二BAT
- 【Qt】Qt再學習(二):Chart Themes Example(常用圖表)QT
- semantic UI學習(二)UI
- 如何使用 sqlalchemy declarative base 多層次繼承SQL繼承
- Kafka 學習筆記(二) :初探 KafkaKafka筆記
- 糕頭:二維火小程式初探
- Kafka學習筆記(二) :初探KafkaKafka筆記
- 專案治理結構初探(二)(轉)
- Qt開發Activex筆記(二):Qt呼叫Qt開發的Activex控制元件QT筆記控制元件
- Qt5.9 UI設計(七)——統一樣式設計QTUI
- QT UI更改編譯後,輸出無變化 解決QTUI編譯
- Qt的Signal和Slot機制(二)QT
- 核心必須懂(二): 檔案系統初探
- Spring原始碼學習之路---IOC初探(二)Spring原始碼
- Flutter之UI繪製流程二FlutterUI
- Qt學習第四篇(主視窗和ui的使用)QTUI
- IDA Pro 6.0使用Qt 框架實現了跨平臺的UIQT框架UI
- [UI]抽屜選單DrawerLayout分析(二)UI
- ui-grid入門教程(二)UI
- SAP UI5 初學者教程之七 - JSON 模型初探試讀版UIJSON模型
- SAP UI5 初學者教程之四:XML 檢視初探試讀版UIXML
- 初探 amaze-vue( 基於vue.js封裝的Amaze UI 元件庫)Vue.js封裝UI元件
- Qt+ECharts開發筆記(二):Qt視窗動態調整大小,使ECharts跟隨Qt視窗大小變換QTEcharts筆記
- 什麼是qt,QT Creator, QT SDK, QT DesignerQT
- Kendo UI使用教程:Kendo UI Grid中的動態資料(二)UI