注冊 | 登錄讀書好,好讀書,讀好書!
讀書網(wǎng)-DuShu.com
當(dāng)前位置: 首頁出版圖書科學(xué)技術(shù)計算機/網(wǎng)絡(luò)軟件與程序設(shè)計Qt 5編程入門(第2版)

Qt 5編程入門(第2版)

Qt 5編程入門(第2版)

定 價:¥105.00

作 者: 霍亞飛,程梁 著
出版社: 北京航空航天大學(xué)出版社
叢編項:
標(biāo) 簽: 暫缺

ISBN: 9787512431119 出版時間: 2019-10-01 包裝: 平裝
開本: 16開 頁數(shù): 字數(shù):  

內(nèi)容簡介

  本書是基于Qt 5.12的QML和Qt Quick入門書籍,詳細介紹了QML語言的語法和編寫Qt Quick程序需要用到的基本知識點。本書內(nèi)容主要包括Qt 5的介紹、QML語法、Qt Quick基礎(chǔ)知識以及在圖形動畫、數(shù)據(jù)處理、多媒體和移動開發(fā)方面的應(yīng)用等。與第1版相比,本書使用Qt 5.12.0和Qt Creator 4.8.0進行了全書修訂,主要添加了圖表、3D可視化、移動開發(fā)等章節(jié);對其他章節(jié)內(nèi)容進行了大量更新,重寫了Qt Quick控件、設(shè)計器、與C++進行集成等章節(jié),從而幫助初學(xué)者快速入門Qt Quick編程。

作者簡介

暫缺《Qt 5編程入門(第2版)》作者簡介

圖書目錄

第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


本目錄推薦

掃描二維碼
Copyright ? 讀書網(wǎng) www.talentonion.com 2005-2020, All Rights Reserved.
鄂ICP備15019699號 鄂公網(wǎng)安備 42010302001612號