定 價:¥105.00
作 者: | 霍亞飛,程梁 著 |
出版社: | 北京航空航天大學(xué)出版社 |
叢編項: | |
標(biāo) 簽: | 暫缺 |
ISBN: | 9787512431119 | 出版時間: | 2019-10-01 | 包裝: | 平裝 |
開本: | 16開 | 頁數(shù): | 字數(shù): |
第1章走進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項目4
1.2.1Qt 5的下載與安裝4
1.2.2創(chuàng)建Qt Quick應(yīng)用6
1.2.3創(chuàng)建Qt Quick UI項目11
1.2.4運行示例程序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對象類型26
2.4對象特性26
2.4.1id特性27
2.4.2屬性特性28
2.4.3信號和信號處理器特性36
2.4.4方法特性40
2.4.5附加屬性和附加信號處理器41
2.4.6枚舉43
2.5集成JavaScript43
2.5.1JavaScript表達式43
2.5.2從JavaScript動態(tài)創(chuàng)建QML對象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文檔定義對象類型60
2.6.2QML組件62
2.6.3作用域和命名解析64
2.6.4資源加載和網(wǎng)絡(luò)透明性70
2.6.5QML的國際化71
2.6.6QML的編碼約定75
2.7QML模塊78
2.7.1定義一個QML模塊78
2.7.2支持的QML模塊類型79
2.8小結(jié)79
第3章Qt Quick基礎(chǔ)80
3.1基礎(chǔ)可視項目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鍵盤事件和焦點作用域117
3.3.5定時器123
3.4使用Loader動態(tài)加載組件124
3.4.1Loader的大小與行為124
3.4.2從加載的項目中接收信號125
3.4.3焦點和鍵盤事件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)對話框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章圖形動畫基礎(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圖片、邊界圖片和動態(tài)圖片217
5.2.1圖片217
5.2.2邊界圖片219
5.2.3動態(tài)圖片221
5.3縮放、旋轉(zhuǎn)和平移變換221
5.3.1使用屬性實現(xiàn)簡單變換221
5.3.2使用Transform實現(xiàn)高級變換223
5.4狀態(tài)224
5.4.1創(chuàng)建狀態(tài)225
5.4.2默認狀態(tài)和when屬性226
5.5動畫和過渡227
5.5.1使用屬性動畫227
5.5.2使用預(yù)定義的目標(biāo)和屬性229
5.5.3在狀態(tài)改變時使用過渡230
5.5.4使用默認的行為動畫231
5.5.5使用并行或順序動畫組232
5.5.6使用動畫師動畫233
5.5.7控制動畫的執(zhí)行234
5.5.8共享動畫實例235
5.6精靈動畫236
5.6.1精靈引擎介紹236
5.6.2AnimatedSprite240
5.7Flickable和Flipable241
5.7.1彈動效果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動感模糊效果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隨機參數(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)簡介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++擴展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)建一個圖表項目347
10.2坐標(biāo)軸Axes348
10.2.1數(shù)值坐標(biāo)軸和對數(shù)數(shù)值坐標(biāo)軸349
10.2.2分類坐標(biāo)軸350
10.2.3柱形圖分類坐標(biāo)軸351
10.2.4日期時間坐標(biāo)軸352
10.2.5坐標(biāo)軸的共有屬性354
10.3圖例Legend354
10.4ChartView356
10.4.1設(shè)置主題357
10.4.2啟用動畫358
10.5使用外部數(shù)據(jù)動態(tài)創(chuàng)建圖表359
10.6常用圖表類型362
10.6.1折線圖、曲線圖和散點圖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場景381
11.3設(shè)置主題382
11.4選擇模式和切片視圖385
11.53D散點圖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對視頻使用圖形效果397
12.4媒體播放器399
12.4.1播放音視頻399
12.4.2使用Windows平臺附加功能400
12.5小結(jié)406
第13章QML與C++的集成407
13.1快速選擇正確的集成方式408
13.2QML運行時的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使用信號425
13.4注冊QML類型426
13.4.1注冊可實例化對象類型426
13.4.2注冊不可實例化對象類型427
13.4.3注冊單例類型427
13.4.4類型的修訂和版本428
13.5定義QML特定類型和屬性429
13.5.1提供附加對象注解數(shù)據(jù)429
13.5.2屬性修飾符類型432
13.5.3指定QML對象類型的默認屬性434
13.5.4接收對象初始化通知435
13.6在C++中使用QML對象436
13.6.1使用C++加載QML對象436
13.6.2使用對象名字訪問加載的QML對象438
13.6.3使用C++訪問QML對象成員439
13.7小結(jié)442
第14章使用Qt Quick設(shè)計器443
14.1Qt Quick UI表單文件444
14.2常用操作448
14.2.1管理項目層次448
14.2.2QML類型庫449
14.2.3指定項目屬性449
14.2.4添加狀態(tài)452
14.2.5在畫布上操作QML類型452
14.3使用設(shè)計器編輯QML文檔457
14.3.1創(chuàng)建項目457
14.3.2創(chuàng)建主視圖458
14.3.3添加視圖461
14.3.4為視圖添加動畫462
14.4小結(jié)464
第15章Qt移動開發(fā)入門465
15.1Qt Android開發(fā)配置465
15.1.1工具軟件的下載465
15.1.2工具軟件的安裝466
15.1.3使用虛擬機運行Qt Android程序468
15.1.4使用手機運行Qt Android程序471
15.1.5發(fā)布項目472
15.2Qt iOS開發(fā)配置476
15.2.1使用模擬器運行Qt iOS程序477
15.2.2使用手機運行Qt iOS程序478
15.3創(chuàng)建演示程序481
15.3.1創(chuàng)建應(yīng)用主窗口481
15.3.2拍照功能486
15.3.3多點觸控488
15.3.4傳感器489
15.3.5地圖491
15.3.6藍牙493
15.4小結(jié)496
參考文獻497