成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Qt Quick簡單學習教程

移動開發
Qt Quick 包含 QtDeclarative C++ 模塊, QML(Qt Meta-Object Language),以及它們集成到Qt Creator IDE中的部分。

Qt Quick是本文要介紹的內容,主要是來了解Qt Quick的應用。Qt Quick (Qt User Interface Creation Kit)是一種高級用戶界面技術,開發人員和設計人員可用它協同創建動畫觸摸式用戶界面和應用程序。Qt Quick 包含 QtDeclarative C++ 模塊, QML(Qt Meta-Object Language),以及它們集成到Qt Creator IDE中的部分。在Qt應用程序中通過使用QtDeclarativeC++模塊,程序可以方便地和QML文件進行交互。

QML是一種描述性的腳本語言,文件格式以.qml結尾。語法格式非常像CSS(參考后文具體例子),但又支持javacript形式的編程控制。它結合了QtDesigner UI和QtScript的優點。QtDesigner可以設計出.ui界面文件,但是不支

持和Qt原生C++代碼的交互。QtScript可以和Qt原生代碼進行交互,但是有一個缺點,如果要在腳本中創建一個繼承于QObject的圖形對象非常不方便,只能在Qt代碼中創建圖形對象,然后從QtScript中進行訪問。而QML可以在

腳本里創建圖形對象,并且支持各種圖形特效,以及狀態機等,同時又能跟Qt寫的C++代碼進行方便的交互,使用起來非常方便。

在Qt C++文件中通過QDeclarativeView加載,就像使用UiLoader加載.ui文件一樣。

使用 Qt 做過 UI 后一定對 QHBoxLayout, QVBoxLayout, 和 QGridLayout 這三個最重要也最常使用的 layout managers 非常熟悉。
在 QML 中使用下列三種布局管理器:Row,、Column、Grid,以及使用 Anchor 進行布局。

QML 中的 Row 元素會將其子控件都排列在同一行,相互不重疊。我們還可以使用它的 spacing 屬性來定義子控件之間的距離。

QML 中的 Column 元素會將其子控件都排列在同一行,相互不重疊。我們可以使用它的 spacing 屬性來定義子控件之間的距離。

QML 中的 Grid 元素會將其子控件都均勻地排列在一個網格內,相互不重疊,每一個子控件都被放置在一個網格單元的(0,0)位置,也就是左上角。Grid的 rows 和 columns 屬性定義網格的行數和列數,列數默認是4。我們還可以使用 Grid 的spacing 屬性來定義網格單元之間的距離,這里注意水平和垂直方向的 spacing 都是一樣的。

Anchor

每一個 item 都可以被認為具有 7 條隱藏的“anchor lines":left、 horizontalCenter、 right、 top、 verticalCenter、baseline、以及 bottom

其中 baseline 是指的文本所在的線,如果 item 沒有文字的話 baselinw 就和 top 的位置是相同的。除此之外,Anchor 系統還提供了margins 和 offsets。margins 是指一個 item 和外界之間所留有的空間,而 offsets 則可以通過使用 center anchor lines 來進行布局。

在Qt C++文件中通過QDeclarativeView加載,就像使用UiLoader加載.ui文件一樣。

Item類是QML最基礎的類

組件其實和其它編程語言中的宏,函數,類,結構體等功能差不多,就是代碼復用。

組件由一個單獨的QML文件名組成,文件名總是以大寫字母開頭,要使用該組件的時候直接使用該文件名就可以了。Item是最常使用的QML類型,一般用作其它類型的容器,可以理解成最頂級的父類,功能類似于QtGui中的QWidget。

MouseArea則為Item增加了一塊鼠標響應區,在鼠標活動區,都能偵聽到鼠標事件。

onClicked那一行則相當于為鼠標單擊事件增加了一個處理行為

Component的語法規則,如果你在Cell.qml里定義的是clicked(),那么你在main.qml中引用的時候就該用onClicked()了。 然后由“when”指 定了什么時候觸發這個狀態PropertyChanges則指定了哪個元素的哪些屬性會發生什么樣的變化。

transitions 是用于增加動畫效果的

“from”和”to”指明了當前的動畫作用于哪兩個狀態變化之間。 “from”和”to”的參數名來自于State中的”name”屬性。

ParalleAnimation則指定了有多個 有多個動畫并行發生。NumberAnimation用于qreal類型的屬性變化,ColorAnimation則用于顏色變化。

小結:Qt Quick簡單學習教程的內容介紹完了,希望通過本文的學習能對你有所幫助!

責任編輯:zhaolei 來源: 互聯網
相關推薦

2011-08-30 15:49:03

QtQuick

2011-06-10 11:24:08

Qt Quick Designer

2011-08-30 12:59:52

Qt數據庫

2011-07-04 11:21:59

QT Designer

2011-07-01 14:39:08

Qt Quick

2011-03-11 14:43:41

Qt-QuickQML

2011-06-20 13:23:03

Qt Quick QML

2011-06-10 11:05:05

Qt Quick QML

2011-06-20 13:05:53

Qt 4.7 Qt Quick

2011-08-30 16:08:24

Qt4.7Qt Quick

2011-03-03 15:32:51

Qt-Quick

2011-09-07 16:28:46

QT WidgetQWidget

2011-05-16 14:12:30

QuickWidgetQML

2011-06-24 17:22:29

Qt Quick QML

2011-09-01 16:01:25

Qt插件

2011-02-14 09:18:06

QT-Quick

2011-06-16 15:36:56

Qt Quick Symbian

2010-08-02 10:50:55

Flex3

2011-06-27 12:56:28

2011-07-08 16:46:21

QtQuick 1.0Symbian
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 综合久久综合久久 | 亚州春色 | 一区二区三区在线免费观看 | 视频在线一区 | av天天澡天天爽天天av | 色婷婷av99xx | 中文字幕一区在线 | 中文日韩在线视频 | 欧美自拍第一页 | 99久久久国产精品 | 午夜影院在线观看 | 国内精品久久久久久 | 麻豆精品国产91久久久久久 | 国产精品久久久久久久久久久久久 | 国产成人精品午夜视频免费 | 午夜理伦三级理论三级在线观看 | 欧美v免费| 精品无码三级在线观看视频 | 亚洲人成人一区二区在线观看 | 日韩在线不卡 | 国产欧美一区二区三区在线看蜜臀 | 国产成人高清 | 激情免费视频 | 久久视频免费看 | 欧洲视频一区二区 | 国产精品一区二区在线 | 国产成人精品久久二区二区91 | 国产91丝袜在线18 | 美美女高清毛片视频免费观看 | 欧美成人一级 | 国产综合区 | 91精品国产91久久综合桃花 | 先锋影音资源网站 | 91一区二区三区 | 最大av在线| 古装人性做爰av网站 | av国产精品 | 亚洲欧美精 | 色视频在线播放 | 91精品久久久久久久久中文字幕 | 日韩精品在线观看视频 |