定 價(jià):¥105.00
作 者: | 霍亞飛,程梁 著 |
出版社: | 北京航空航天大學(xué)出版社 |
叢編項(xiàng): | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787512431119 | 出版時(shí)間: | 2019-10-01 | 包裝: | 平裝 |
開本: | 16開 | 頁(yè)數(shù): | 字?jǐn)?shù): |
第1章走進(jìn)Qt Quick的世界1
1.1全新的QML和Qt Quick1
1.1.1歷史變遷1
1.1.2QML2
1.1.3Qt Quick2
1.1.4Qt QML和Qt Quick框架3
1.2Qt Quick項(xiàng)目4
1.2.1Qt 5的下載與安裝4
1.2.2創(chuàng)建Qt Quick應(yīng)用6
1.2.3創(chuàng)建Qt Quick UI項(xiàng)目11
1.2.4運(yùn)行示例程序13
1.2.5Qt Quick程序的發(fā)布14
1.3小結(jié)16
第2章QML語法17
2.1QML語法基礎(chǔ)17
2.2import導(dǎo)入語句20
2.2.1模塊(命名空間)導(dǎo)入語句20
2.2.2目錄導(dǎo)入語句21
2.2.3JavaScript資源導(dǎo)入語句23
2.3QML類型系統(tǒng)24
2.3.1基本類型24
2.3.2JavaScript類型26
2.3.3對(duì)象類型26
2.4對(duì)象特性26
2.4.1id特性27
2.4.2屬性特性28
2.4.3信號(hào)和信號(hào)處理器特性36
2.4.4方法特性40
2.4.5附加屬性和附加信號(hào)處理器41
2.4.6枚舉43
2.5集成JavaScript43
2.5.1JavaScript表達(dá)式43
2.5.2從JavaScript動(dòng)態(tài)創(chuàng)建QML對(duì)象49
2.5.3在QML中定義JavaScript資源53
2.5.4在QML中導(dǎo)入JavaScript資源56
2.5.5JavaScript宿主環(huán)境58
2.6QML文檔59
2.6.1通過QML文檔定義對(duì)象類型60
2.6.2QML組件62
2.6.3作用域和命名解析64
2.6.4資源加載和網(wǎng)絡(luò)透明性70
2.6.5QML的國(guó)際化71
2.6.6QML的編碼約定75
2.7QML模塊78
2.7.1定義一個(gè)QML模塊78
2.7.2支持的QML模塊類型79
2.8小結(jié)79
第3章Qt Quick基礎(chǔ)80
3.1基礎(chǔ)可視項(xiàng)目81
3.1.1Item81
3.1.2Rectangle85
3.1.3Text85
3.1.4TextInput92
3.1.5TextEdit97
3.2布局管理99
3.2.1定位器99
3.2.2基于錨的布局103
3.2.3Layouts106
3.3事件處理110
3.3.1MouseArea110
3.3.2鼠標(biāo)事件和滾輪事件112
3.3.3拖放事件114
3.3.4鍵盤事件和焦點(diǎn)作用域117
3.3.5定時(shí)器123
3.4使用Loader動(dòng)態(tài)加載組件124
3.4.1Loader的大小與行為124
3.4.2從加載的項(xiàng)目中接收信號(hào)125
3.4.3焦點(diǎn)和鍵盤事件126
3.5小結(jié)127
第4章Qt Quick控件128
4.1Qt Quick控件基礎(chǔ)129
4.2按鈕類控件139
4.2.1AbstractButton139
4.2.2Button141
4.2.3CheckBox142
4.2.4RadioButton144
4.2.5ButtonGroup145
4.2.6RoundButton146
4.2.7Switch147
4.2.8DelayButton148
4.2.9Action和ActionGroup149
4.3指示類控件151
4.3.1Label151
4.3.2ProgressBar151
4.3.3BusyIndicator152
4.3.4PageIndicator153
4.4輸入類控件154
4.4.1TextField154
4.4.2TextArea155
4.4.3ComboBox156
4.4.4SpinBox159
4.4.5Dial162
4.4.6Slider163
4.4.7RangeSlider165
4.4.8Tumbler166
4.5菜單類控件167
4.5.1Menu167
4.5.2MenuBar171
4.6容器類控件173
4.6.1Pane173
4.6.2Frame174
4.6.3GroupBox174
4.6.4Page175
4.6.5ScrollView176
4.6.6ScrollBar和ScrollIndicator178
4.6.7StackView180
4.6.8TabBar185
4.6.9ToolBar187
4.6.10SwipeView188
4.7彈出類控件190
4.7.1Overlay190
4.7.2Popup191
4.7.3Dialog194
4.7.4ToolTip195
4.7.5Drawer196
4.8標(biāo)準(zhǔn)對(duì)話框197
4.8.1ColorDialog197
4.8.2FileDialog198
4.8.3FontDialog199
4.8.4MessageDialog200
4.9Qt Quick Controls 2配置文件202
4.10共享業(yè)務(wù)邏輯代碼202
4.10.1圖片查看器203
4.10.2文件選擇器207
4.10.3重構(gòu)圖片選擇器207
4.11小結(jié)212
第5章圖形動(dòng)畫基礎(chǔ)213
5.1顏色、漸變和調(diào)色板213
5.1.1顏色213
5.1.2漸變216
5.1.3系統(tǒng)調(diào)色板216
5.2圖片、邊界圖片和動(dòng)態(tài)圖片217
5.2.1圖片217
5.2.2邊界圖片219
5.2.3動(dòng)態(tài)圖片221
5.3縮放、旋轉(zhuǎn)和平移變換221
5.3.1使用屬性實(shí)現(xiàn)簡(jiǎn)單變換221
5.3.2使用Transform實(shí)現(xiàn)高級(jí)變換223
5.4狀態(tài)224
5.4.1創(chuàng)建狀態(tài)225
5.4.2默認(rèn)狀態(tài)和when屬性226
5.5動(dòng)畫和過渡227
5.5.1使用屬性動(dòng)畫227
5.5.2使用預(yù)定義的目標(biāo)和屬性229
5.5.3在狀態(tài)改變時(shí)使用過渡230
5.5.4使用默認(rèn)的行為動(dòng)畫231
5.5.5使用并行或順序動(dòng)畫組232
5.5.6使用動(dòng)畫師動(dòng)畫233
5.5.7控制動(dòng)畫的執(zhí)行234
5.5.8共享動(dòng)畫實(shí)例235
5.6精靈動(dòng)畫236
5.6.1精靈引擎介紹236
5.6.2AnimatedSprite240
5.7Flickable和Flipable241
5.7.1彈動(dòng)效果241
5.7.2翻轉(zhuǎn)效果243
5.8小結(jié)244
第6章圖形效果245
6.1混合效果245
6.2顏色效果248
6.3漸變效果251
6.3.1錐形漸變251
6.3.2線性漸變252
6.3.3輻射漸變253
6.4變形效果254
6.5陰影效果255
6.5.1投影255
6.5.2內(nèi)陰影256
6.6模糊效果257
6.6.1快速模糊257
6.6.2高斯模糊258
6.6.3遞歸模糊259
6.6.4遮罩模糊260
6.7動(dòng)感模糊效果261
6.7.1方向模糊261
6.7.2徑向模糊262
6.7.3縮放模糊263
6.8發(fā)光效果263
6.8.1發(fā)光263
6.8.2矩形發(fā)光264
6.9遮罩效果266
6.9.1不透明遮罩266
6.9.2閾值遮罩267
6.10小結(jié)268
第7章粒子系統(tǒng)269
7.1ParticleSystem269
7.2發(fā)射器271
7.3渲染器272
7.4TrailEmitter275
7.5粒子組276
7.6隨機(jī)參數(shù)278
7.7影響器279
7.7.1Age279
7.7.2Attractor280
7.7.3Friction281
7.7.4Gravity281
7.7.5Turbulence282
7.7.6Wander282
7.7.7GroupGoal282
7.7.8SpriteGoal283
7.8小結(jié)284
第8章Canvas 2D285
8.1Canvas的使用285
8.2繪制操作287
8.2.1繪制參數(shù)設(shè)置288
8.2.2繪制矩形290
8.2.3狀態(tài)的保存與恢復(fù)291
8.2.4繪制文本293
8.2.5繪制路徑294
8.3漸變填充299
8.3.1線性漸變299
8.3.2輻射漸變300
8.3.3錐型漸變301
8.4陰影301
8.5使用圖像302
8.6坐標(biāo)變換304
8.6.1平移305
8.6.2縮放305
8.6.3旋轉(zhuǎn)306
8.6.4斜切307
8.6.5transform()函數(shù)總結(jié)308
8.7小結(jié)309
第9章模型和視圖310
9.1模型/視圖架構(gòu)簡(jiǎn)介310
9.2數(shù)據(jù)模型312
9.2.1整數(shù)作為模型312
9.2.2ListModel313
9.2.3WorkerScript315
9.2.4ObjectModel316
9.2.5DelegateModel317
9.2.6Package319
9.2.7XmlListModel320
9.2.8LocalStorage322
9.2.9使用C++擴(kuò)展QML模型326
9.3視圖類型330
9.3.1ListView330
9.3.2GridView336
9.3.3視圖過渡338
9.3.4PathView341
9.4調(diào)整性能344
9.5小結(jié)345
第10章Qt圖表346
10.1創(chuàng)建一個(gè)圖表項(xiàng)目347
10.2坐標(biāo)軸Axes348
10.2.1數(shù)值坐標(biāo)軸和對(duì)數(shù)數(shù)值坐標(biāo)軸349
10.2.2分類坐標(biāo)軸350
10.2.3柱形圖分類坐標(biāo)軸351
10.2.4日期時(shí)間坐標(biāo)軸352
10.2.5坐標(biāo)軸的共有屬性354
10.3圖例Legend354
10.4ChartView356
10.4.1設(shè)置主題357
10.4.2啟用動(dòng)畫358
10.5使用外部數(shù)據(jù)動(dòng)態(tài)創(chuàng)建圖表359
10.6常用圖表類型362
10.6.1折線圖、曲線圖和散點(diǎn)圖362
10.6.2面積圖364
10.6.3柱形圖、堆積柱形圖、百分比堆積柱形圖365
10.6.4餅狀圖366
10.6.5盒須圖(箱形圖)367
10.6.6蠟燭圖(K線圖)368
10.6.7極坐標(biāo)圖369
10.7小結(jié)371
第11章Qt Data Visualization數(shù)據(jù)可視化372
11.13D柱形圖372
11.1.13D坐標(biāo)軸375
11.1.2數(shù)據(jù)代理377
11.1.33D系列380
11.2自定義3D場(chǎng)景381
11.3設(shè)置主題382
11.4選擇模式和切片視圖385
11.53D散點(diǎn)圖387
11.63D曲面圖389
11.7小結(jié)391
第12章多媒體應(yīng)用392
12.1多媒體模塊介紹392
12.2播放音頻393
12.2.1播放壓縮音頻393
12.2.2播放未壓縮音頻395
12.3播放視頻396
12.3.1使用Video播放視頻文件396
12.3.2對(duì)視頻使用圖形效果397
12.4媒體播放器399
12.4.1播放音視頻399
12.4.2使用Windows平臺(tái)附加功能400
12.5小結(jié)406
第13章QML與C++的集成407
13.1快速選擇正確的集成方式408
13.2QML運(yùn)行時(shí)的C++類411
13.2.1QQmlEngine411
13.2.2QQmlContext412
13.2.3QQmlComponent414
13.2.4QQmlExpression415
13.3在QML中使用C++特性416
13.3.1數(shù)據(jù)類型處理和擁有權(quán)416
13.3.2數(shù)據(jù)類型的轉(zhuǎn)換416
13.3.3使用C++屬性419
13.3.4使用函數(shù)和槽423
13.3.5使用信號(hào)425
13.4注冊(cè)QML類型426
13.4.1注冊(cè)可實(shí)例化對(duì)象類型426
13.4.2注冊(cè)不可實(shí)例化對(duì)象類型427
13.4.3注冊(cè)單例類型427
13.4.4類型的修訂和版本428
13.5定義QML特定類型和屬性429
13.5.1提供附加對(duì)象注解數(shù)據(jù)429
13.5.2屬性修飾符類型432
13.5.3指定QML對(duì)象類型的默認(rèn)屬性434
13.5.4接收對(duì)象初始化通知435
13.6在C++中使用QML對(duì)象436
13.6.1使用C++加載QML對(duì)象436
13.6.2使用對(duì)象名字訪問加載的QML對(duì)象438
13.6.3使用C++訪問QML對(duì)象成員439
13.7小結(jié)442
第14章使用Qt Quick設(shè)計(jì)器443
14.1Qt Quick UI表單文件444
14.2常用操作448
14.2.1管理項(xiàng)目層次448
14.2.2QML類型庫(kù)449
14.2.3指定項(xiàng)目屬性449
14.2.4添加狀態(tài)452
14.2.5在畫布上操作QML類型452
14.3使用設(shè)計(jì)器編輯QML文檔457
14.3.1創(chuàng)建項(xiàng)目457
14.3.2創(chuàng)建主視圖458
14.3.3添加視圖461
14.3.4為視圖添加動(dòng)畫462
14.4小結(jié)464
第15章Qt移動(dòng)開發(fā)入門465
15.1Qt Android開發(fā)配置465
15.1.1工具軟件的下載465
15.1.2工具軟件的安裝466
15.1.3使用虛擬機(jī)運(yùn)行Qt Android程序468
15.1.4使用手機(jī)運(yùn)行Qt Android程序471
15.1.5發(fā)布項(xiàng)目472
15.2Qt iOS開發(fā)配置476
15.2.1使用模擬器運(yùn)行Qt iOS程序477
15.2.2使用手機(jī)運(yùn)行Qt iOS程序478
15.3創(chuàng)建演示程序481
15.3.1創(chuàng)建應(yīng)用主窗口481
15.3.2拍照功能486
15.3.3多點(diǎn)觸控488
15.3.4傳感器489
15.3.5地圖491
15.3.6藍(lán)牙493
15.4小結(jié)496
參考文獻(xiàn)497