【零基礎學QT】【044】Qt Quick和Qml

什麼是Qt Quick和Qml

  • Qt Quick是從Qt4開始引入的一套新的UI開發框架,並在Qt5時得到較大完善,成爲首選的UI開發方式
  • Qt Quick使用類似於CSS的方式進行界面開發
  • Qt Quick最早設計出來是爲了開發手機應用界面的,性能比Qt Widget要差很多,但隨着Qt Quick的不斷髮展,現在在性能上的差距已經很小了,而且Qt Quick也不再僅侷限於手機應用,此外Qt Quick比Qt Widget支持更靈活更豐富的控件樣式,所以新項目界面開發,推薦優先使用Qt Quick
  • Qml是一種文件格式,Qml文件用於編寫Qt Quick佈局代碼和事件代碼

創建Qt Quick項目
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
Qml和C++之間的關聯
我們可以看到,新建的簡單項目只有main.cpp和main.qml兩個文件
main.cpp非常簡單,很容易推測出,Qt是通過一個QQmlApplicationEngine的C++類來解析Qml文件,將其轉化爲UI界面


	//main.cpp

	int main(int argc, char *argv[]) {
	    QGuiApplication app(argc, argv);
	
	    QQmlApplicationEngine engine;
	    engine.load("qrc:/main.qml");
	
	    return app.exec();
	}


	//main.qml

	import QtQuick 2.12
	import QtQuick.Window 2.12
	
	Window {
	    visible: true
	    width: 640
	    height: 480
	    title: "Hello World"
	}

Qml是HTML,CSS,Javascript的集合
可以看到,Qml文件和CSS文件很像,但是它不僅僅起到CSS的功能,同時還具備HTML和Javascript的功能
以Window元素爲例,它裏面還可以再嵌套其它元素,構成一個DOM樹,相當於HTML的功能
不但如此,還可以給Window元素添加一個方法,在裏面執行代碼,相當於Javascript的功能
Qml的樣式屬性大多和CSS同名,這給前端開發人員轉行開發提供了極大的方便

發佈了429 篇原創文章 · 獲贊 43 · 訪問量 13萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章