C++ GUI Programming with Qt 4
Prentice Hall
978-0-13-187249-3 (ISBN)
- Titel erscheint in neuer Auflage
- Artikel merken
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.
Jasmin Blanchette, Trolltech's documentation manager and a senior developer, has worked at Trolltech since 2001. He is editor of Qt Quarterly, Trolltech's technical newsletter, and coauthored C++ GUI Programming with Qt 3. Mark Summerfield works as an independent trainer and consultant specializing in C++, Qt, and Python. He was Trolltech's documentation manager for almost three years and coauthored C++ GUI Programming with Qt 3.
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 13Subclassing 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 43Subclassing 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 73The 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 101Customizing Qt Widgets 101
Subclassing QWidget 103
Integrating Custom Widgets with Qt Designer 113
Double Buffering 116
Part II: Intermediate Qt 6. Layout Management 137Laying 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 163Reimplementing Event Handlers 163
Installing Event Filters 168
Staying Responsive During Intensive Processing 171
8. 2D and 3D Graphics 175Painting with QPainter 175
Painter Transformations 180
High-Quality Rendering with QImage 188
Printing 190
Graphics with OpenGL 198
9. Drag and Drop 205Enabling Drag and Drop 205
Supporting Custom Drag Types 210
Clipboard Handling 215
10. Item View Classes 217Using the Item View Convenience Classes 218
Using Predefined Models 225
Implementing Custom Models 230
Implementing Custom Delegates 244
11. Container Classes 251Sequential Containers 252
Associative Containers 260
Generic Algorithms 263
Strings, Byte Arrays, and Variants 265
12. Input/Output 273Reading and Writing Binary Data 274
Reading and Writing Text 279
Traversing Directories 285
Embedding Resources 286
Inter-Process Communication 287
13. Databases 293Connecting and Querying 294
Presenting Data in Tabular Form 299
Implementing Master-Detail Forms 304
14. Networking 311Writing FTP Clients 311
Writing HTTP Clients 320
Writing TCP Client-Server Applications 323
Sending and Receiving UDP Datagrams 333
15. XML 339Reading XML with SAX 339
Reading XML with DOM 344
Writing XML 348
16. Providing Online Help 351Tooltips, 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 361Working with Unicode 362
Making Applications Translation-Aware 365
Dynamic Language Switching 371
Translating Applications 376
18. Multithreading 381Creating Threads 381
Synchronizing Threads 385
Communicating with the Main Thread 391
Using Qt's Classes in Secondary Threads 396
19. Creating Plugins 399Extending Qt with Plugins 400
Making Applications Plugin-Aware 408
Writing Application Plugins 412
20. Platform-Specific Features 415Interfacing with Native APIs 415
Using ActiveX on Windows 419
Handling X11 Session Management 431
21. Embedded Programming 439Getting 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
Erscheint lt. Verlag | 29.6.2006 |
---|---|
Verlagsort | Upper Saddle River |
Sprache | englisch |
Maße | 181 x 234 mm |
Gewicht | 822 g |
Themenwelt | Informatik ► Programmiersprachen / -werkzeuge ► C / C++ |
ISBN-10 | 0-13-187249-4 / 0131872494 |
ISBN-13 | 978-0-13-187249-3 / 9780131872493 |
Zustand | Neuware |
Haben Sie eine Frage zum Produkt? |
aus dem Bereich