Home   FAQs   New Arrivals   Specials   Pricing & Shipping   Location   Corporate Services  
 Search:   
 View Cart   Check Out   
 
Browse by Subject
I.T
 .NET 3.5
 Windows 2000/XP
 Cisco
 Java
 Office XP
 VB
 ASP
 UML
 Web Design
 E-Commerce
 Project Management
 Macintosh
 Linux
 Windows Server 2008
 Sharepoint 2007
Certification
 MCITP
 MCTS
Economics and Business
 Accounting
 Business Information Systems
 Economics
 Finance
 Management
 Marketing
 Human Resources
 OneKey Textbooks

C++ GUI Programming with Qt 4

by: Blanchette Jasmin, Summerfield Mark

Notify me when in stock

On-line Price: $71.95 (includes GST)

Paperback package 560

20%Off Retail Price

You save: $18.00

Usually Ships within 1 week.

Prices can change...but we will email you and ask for your direction where there is an increase.

Retail Price: $89.95

Publisher: PRENTICE HALL,2006-08-17 00:00:00

Category: C++ PROGRAMMING Level: B/I/A

ISBN: 0131872494
ISBN13: 9780131872493

Add to Shopping Cart

Book Description

The Only Official Best-Practice Guide to Qt 4.1 Programming

Using Trolltech's Qt you can build industrial-strength C++ applications that run natively on Windows, Linux/Unix, Mac OS X, and embedded Linux--without making source code changes. With this book Trolltech insiders have written a start-to-finish guide to getting great results with the most powerful version of Qt ever created: Qt 4.1.

Using C++ GUI Programming with Qt 4 you'll discover the most effective Qt 4 programming patterns and techniques as you master key technologies ranging from Qt's model/view architecture to Qt's powerful new 2D paint engine. The authors provide readers with unparalleled insight into Qt's event model and layout system. Then, using realistic examples, they introduce superior techniques for everything from basic GUI development to advanced database and XML integration.

Includes new chapters on Qt 4's model/view architecture and Qt's new plugin support, along with a brief introduction to Qtopia embedded programming
Covers all Qt fundamentals, from dialogs and windows to implementing application functionality
Introduces best practices for layout management and event processing
Shows how to make the most of Qt 4's new APIs, including the powerful new 2D paint engine and the new easy-to-use container classes
Contains completely updated material in every chapter
Presents advanced Qt 4 techniques covered in no other book, from creating both Qt and application plugins to interfacing with native APIs
Contains an in-depth appendix on C++/Qt programming for experienced Java developers
The accompanying CD-ROM includes the open source edition of Qt 4.1.1 for Windows, Mac, Linux, and many Unixes, as well as MinGW, a set of freely available development tools that can be used to build Qt applications on Windows, and also the source code for the book's examples.

Table of Contents

Foreword ix

Preface xi

Acknowledgments xiii

A Brief History of Qt xv

Part I: Basic Qt

1. Getting Started 3

Hello Qt 3

Making Connections 5

Laying Out Widgets 6

Using the Reference Documentation 9

2. Creating Dialogs 13
Subclassing QDialog 13

Signals and Slots in Depth 20

Rapid Dialog Design 23

Shape-Changing Dialogs 29

Dynamic Dialogs 36

Built-in Widget and Dialog Classes 37

3. Creating Main Windows 43
Subclassing QMainWindow 44

Creating Menus and Toolbars 48

Setting Up the Status Bar 52

Implementing the File Menu 54

Using Dialogs 61

Storing Settings 67

Multiple Documents 68

Splash Screens 71

4. Implementing Application Functionality 73
The Central Widget 73

Subclassing QTableWidget 74

Loading and Saving 80

Implementing the Edit Menu 83

Implementing the Other Menus 87

Subclassing QTableWidgetItem 91

5. Creating Custom Widgets 101
Customizing Qt Widgets 101

Subclassing QWidget 103

Integrating Custom Widgets with Qt Designer 113

Double Buffering 116

Part II: Intermediate Qt 6. Layout Management 137
Laying Out Widgets on a Form 137

Stacked Layouts 143

Splitters 145

Scrolling Areas 148

Dock Widgets and Toolbars 150

Multiple Document Interface 152

7. Event Processing 163
Reimplementing Event Handlers 163

Installing Event Filters 168

Staying Responsive During Intensive Processing 171

8. 2D and 3D Graphics 175
Painting with QPainter 175

Painter Transformations 180

High-Quality Rendering with QImage 188

Printing 190

Graphics with OpenGL 198

9. Drag and Drop 205
Enabling Drag and Drop 205

Supporting Custom Drag Types 210

Clipboard Handling 215

10. Item View Classes 217
Using the Item View Convenience Classes 218

Using Predefined Models 225

Implementing Custom Models 230

Implementing Custom Delegates 244

11. Container Classes 251
Sequential Containers 252

Associative Containers 260

Generic Algorithms 263

Strings, Byte Arrays, and Variants 265

12. Input/Output 273
Reading and Writing Binary Data 274

Reading and Writing Text 279

Traversing Directories 285

Embedding Resources 286

Inter-Process Communication 287

13. Databases 293
Connecting and Querying 294

Presenting Data in Tabular Form 299

Implementing Master-Detail Forms 304

14. Networking 311
Writing FTP Clients 311

Writing HTTP Clients 320

Writing TCP Client-Server Applications 323

Sending and Receiving UDP Datagrams 333

15. XML 339
Reading XML with SAX 339

Reading XML with DOM 344

Writing XML 348

16. Providing Online Help 351
Tooltips, Status Tips, and 'What's This?' Help 351

Using QTextBrowser as a Simple Help Engine 353

Using Qt Assistant for Powerful Online Help 356

Part III: Advanced Qt17. Internationalization 361
Working with Unicode 362

Making Applications Translation-Aware 365

Dynamic Language Switching 371

Translating Applications 376

18. Multithreading 381
Creating Threads 381

Synchronizing Threads 385

Communicating with the Main Thread 391

Using Qt's Classes in Secondary Threads 396

19. Creating Plugins 399
Extending Qt with Plugins 400

Making Applications Plugin-Aware 408

Writing Application Plugins 412

20. Platform-Specific Features 415
Interfacing with Native APIs 415

Using ActiveX on Windows 419

Handling X11 Session Management 431

21. Embedded Programming 439
Getting Started with Qtopia 440

Customizing Qtopia Core 441

Appendix A. Installing Qt 447

Appendix B. Introduction to C++ for Java and C# Programmers 451

Index 493