Home > Store

C++ GUI Programming with Qt 3

Register your product to gain access to bonus material or receive a coupon.

C++ GUI Programming with Qt 3

Premium Website

  • Sorry, this book is no longer in print.
Not for Sale



  • Comprehensive coverage of Qt programming—The first book to provide systematic, insider-level coverage of programming with the latest and most sophisticated version of the Qt toolkit: Qt3.
    • Prepares students for any responsibility or challenge, either as part of an application development team or as the sole developer of a new Qt application.

  • Incremental, step-by-step coverage—Starts with “Hello Qt,” and incrementally moves on to more advanced topics such as custom widgets and drag-and-drop.
    • Helps students gradually gain confidence as they build on what theyve already learned.

  • QT signals and slots mechanisms—Thoroughly explains Qts innovative “signals and slots” mechanism for inter-object communication.
    • Enables students to master Qt features that make GUI programming far simpler and more reliable.

  • Best practice “idiomatic” programming techniques—Provides real-world insight, not just a rehash or summary of the online documentation.
    • Gives students unsurpassed insight into the high-efficiency techniques the worlds best Qt programmers depend on.

  • Extensive enterprise-oriented coverage—Covers Qt 3 database development, networking, XML, internationalization, and other advanced topics.
    • Will help students succeed even in leading-edge Qt development projects.

  • By insiders at Trolltech, creators of Qt—Authored by experts who actually develop and document Qt for Trolltech.
    • Gives students confidence that they are receiving information that is thorough, accurate, clear, and useful—and reflects the challenges they will actually face.


  • Copyright 2004
  • Edition: 1st
  • Premium Website
  • ISBN-10: 0-13-124072-2
  • ISBN-13: 978-0-13-124072-8

"...not only the best book on Qt I have ever seen, but also the best book presenting any programming framework. Every sentence appears to be carefully worded, and every chapter has a sound concept, and so does the work as a whole." --Matthias Ettrich, Trolltech's lead developer, founder of the KDE project

"The 'Tao of Qt'.... The Qt system is a beautiful example of object oriented design, and the authors take advantage of this.... The authors have done an excellent job of presenting the subject in an interesting and engaging way...." --Ron McCarty, Instructor and Chair of the Department of Computer Science, Penn State Erie, The Behrend College

The first official Trolltech guide to Qt 3.2 programming!

Straight from Trolltech, this book covers all you need to build industrial-strength applications with Qt 3.2.x and C++--applications that run natively on Windows, Linux/Unix, Mac OS X, and embedded Linux with no source code changes! The book teaches solid Qt programming practices; it is not a rehash of the documentation.

  • Build powerful C++ GUI applications quickly and easily
  • Design dialogs and main windows visually and in code
  • Learn Qt's innovative typesafe signals and slots mechanism
  • Use layouts to create forms that automatically size and scale
  • Create custom signals, slots, events, and controls
  • Program the ''Qt way'' with techniques for Qt 3.2 that'll work with Qt 4
  • Code applications with menus, toolbars, dialogs, and drag and drop
  • Utilize 2D and 3D graphics, multithreading, and networking
  • Write database and XML applications
  • Internationalize to reach foreign markets
  • Exploit platform-specific-features like ActiveX

Already using Qt or just starting out? Evaluating Qt or managing it? Building open source applications--or commercial applications? Want to develop for Windows without buying an expensive compiler? Whatever your goal, this is the only book you need!

Sample Content

Online Sample Chapter

Creating Main Windows with Qt3

Downloadable Sample Chapter

Download the Sample Chapter related to this title.

Table of Contents




A Brief History of Qt.


1. Getting Started.

Hello Qt.

Making Connections.

Using the Reference Documentation.

2. Creating Dialogs.

Subclassing QDialog.

Signals and Slots in Depth.

Rapid Dialog Design.

Shape-Changing Dialogs.

Dynamic Dialogs.

Built-inWidget and Dialog Classes.

3. Creating Main Windows.

Subclassing QMainWindow.

Creating Menus and Toolbars.

Implementing the File Menu.

Setting Up the Status Bar.

Using Dialogs.


Multiple Documents.

Splash Screens.

4. Implementing Application Functionality.

The CentralWidget.

Subclassing QTable.

Loading and Saving.

Implementing the Edit Menu.

Implementing the Other Menus.

Subclassing QTableItem.

5. Creating Custom Widgets.

Customizing Qt Widgets.

Subclassing QWidget.

Integrating CustomWidgets with Qt Designer.

Double Buffering.


6. Layout Management.

Basic Layouts.


Widget Stacks.

Scroll Views.

Dock Windows.

Multiple Document Interface.

7. Event Processing.

Reimplementing Event Handlers.

Installing Event Filters.

Staying Responsive During Intensive Processing.

8. 2D and 3D Graphics.

Painting with QPainter.

Graphics with QCanvas.


Graphics with OpenGL.

9. Drag and Drop.

Enabling Drag and Drop.

Supporting Custom Drag Types.

Advanced Clipboard Handling.

10. Input/Output.

Reading and Writing Binary Data.

Reading and Writing Text.

Handling Files and Directories.

Inter-Process Communication.

11. Container Classes.




Pointer-Based Containers.

QString and QVariant.

12. Databases.

Connecting and Querying.

Presenting Data in Tabular Form.

Creating Data-Aware Forms.

13. Networking.

Using QFtp.

Using QHttp.

TCP Networking with QSocket.

UDP Networking with QSocketDevice.

14. XML.

Reading XML with SAX.

Reading XML with DOM.

Writing XML.

15. Internationalization.

Working with Unicode.

Making Applications Translation-Aware.

Dynamic Language Switching.

Translating Applications.

16. Providing Online Help.

Tooltips, Status Tips, and "What's This?" Help.

Using QTextBrowser as a Simple Help Engine.

Using Qt Assistant for Powerful Online Help.

17. Multithreading.

Working with Threads.

Communicating with the GUI Thread.

Using Qt's Classes in Non-GUI Threads.

18. Platform-Specific Features.

Interfacing with Native APIs.

Using ActiveX.

Session Management.

A: Installing Qt.

A Note on Licensing.

Installing Qt/Windows.

Installing Qt/Mac.

Installing Qt/X11.

B: Qt's Class Hierarchy.


Submit Errata

More Information

Unlimited one-month access with your purchase
Free Safari Membership