Buy C++ GUI Programming with Qt4 by Jasmin Blanchette
close menu
Bookswagon
search
My Account
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Book 1
Book 2
Book 3
Home > Computing and Information Technology Books > Computer programming / software engineering > Object-oriented programming (OOP) > C++ GUI Programming with Qt4
C++ GUI Programming with Qt4

C++ GUI Programming with Qt4


     4.6  |  8 Reviews 
5
4
3
2
1



Out of Stock


Notify me when this book is in stock
X
About the Book

The Only Official, Best-Practice Guide to Qt 4.3 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 source code changes. Now, two Trolltech insiders have written a start-to-finish guide to getting outstanding results with the latest version of Qt: Qt 4.3.

Packed with realistic examples and in-depth advice, this is the book Trolltech uses to teach Qt to its own new hires. Extensively revised and expanded, it reveals today's best Qt programming patterns for everything from implementing model/view architecture to using Qt 4.3's improved graphics support. You'll find proven solutions for virtually every GUI development task, as well as sophisticated techniques for providing database access, integrating XML, using subclassing, composition, and more. Whether you're new to Qt or upgrading from an older version, this book can help you accomplish everything that Qt 4.3 makes possible.

  • Completely updated throughout, with significant new coverage of databases, XML, and Qtopia embedded programming
  • Covers all Qt 4.2/4.3 changes, including Windows Vista support, native CSS support for widget styling, and SVG file generation
  • Contains separate 2D and 3D chapters, coverage of Qt 4.3's new graphics view classes, and an introduction to QPainter's OpenGL back-end
  • Includes new chapters on look-and-feel customization and application scripting
  • Illustrates Qt 4's model/view architecture, plugin support, layout management, event processing, container classes, and much more
  • Presents advanced techniques covered in no other book—from creating plugins to interfacing with native APIs
  • Includes a new appendix on Qt Jambi, the new Java version of Qt


Table of Contents:
Series Editor's Note xiForeword xiiiPreface xvAcknowledgments xviiA Brief History of Qt xixPart I: Basic Qt 1. Getting Started 3

Hello Qt 3

Making Connections 5

Laying Out Widgets 6

Using the Reference Documentation 10

2. Creating Dialogs 13

Subclassing QDialog 13

Signals and Slots in Depth 20

Rapid Dialog Design 23

Shape-Changing Dialogs 31

Dynamic Dialogs 38

Built-in Widget and Dialog Classes 39

3. Creating Main Windows 45

Subclassing QMain Window 46

Creating Menus and Toolbars 50

Setting Up the Status Bar 55

Implementing the File Menu 57

Using Dialogs 63

Storing Settings 69

Multiple Documents 71

Splash Screens 74

4. Implementing Application Functionality 77

The Central Widget 77

Subclassing QTableWidget 78

Loading and Saving 84

Implementing the Edit Menu 87

Implementing the Other Menus 91

Subclassing QTableWidget Item 95

5. Creating Custom Widgets 105

Customizing QtWidgets 105

Subclassing QWidget 107

Integrating Custom Widgets with QtDesigner 117

Double Buffering 121

Part II: Intermediate Qt 6. Layout Management 141

Laying Out Widgets on a Form 141

Stacked Layouts 147

Splitters 149

Scrolling Areas 152

Dock Windows and Toolbars 154

Multiple Document Interface 157

7. Event Processing 167

Reimplementing Event Handlers 167

Installing Event Filters 172

Staying Responsive during Intensive Processing 175

8. 2D Graphics 179

Painting with QPainter 180

Coordinate System Transformations 185

High-Quality Rendering with QImage 193

Item-Based Rendering with Graphics View 195

Printing 217

9. Drag and Drop 227

Enabling Drag and Drop 227

Supporting Custom Drag Types 232

Clipboard Handling 237

10. Item View Classes 239

Using the Item View Convenience Classes 240

Using Predefined Models 247

Implementing Custom Models 252

Implementing Custom Delegates 266

11. Container Classes 273

Sequential Containers 274

Associative Containers 282

Generic Algorithms 285

Strings, Byte Arrays, and Variants 287

12. Input/Output 295

Reading and Writing Binary Data 296

Reading and Writing Text 301

Traversing Directories 307

Embedding Resources 308

Inter-Process Communication 309

13. Databases 315

Connecting and Querying 316

Viewing Tables 322

Editing Records Using Forms 324

Presenting Data in Tabular Forms 330

14. Multithreading 339

Creating Threads 340

Synchronizing Threads 343

Communicating with the Main Thread 349

Using Qt's Classes in Secondary Threads 356

15. Networking 359

Writing FTP Clients 359

Writing HTTP Clients 368

Writing TCP Client-Server Applications 371

Sending and Receiving UDP Datagrams 381

16. XML 387

Reading XML with QXmlStream Reader 388

Reading XML with DOM 395

Reading XML with SAX 400

Writing XML 404

17. Providing Online Help 407

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

Using a Web Browser to Provide Online Help 409

Using QText Browser as a Simple Help Engine 411

Using QtAssistant for Powerful Online Help 414

Part III: Advanced Qt 18. Internationalization 419

Working with Unicode 420

Making Applications Translation-Aware 423

Dynamic Language Switching 429

Translating Applications 435

19. Look and Feel Customization 439

Using Qt Style Sheets 439

Subclassing QStyle 454

20. 3D Graphics 471

Drawing Using OpenGL 471

Combining OpenGL and QPainter 477

Doing Overlays Using Framebuffer Objects 484

21. Creating Plugins 491

Extending Qt with Plugins 492

Making Applications Plugin-Aware 502

Writing Application Plugins 505

22. Application Scripting 509

Overview of the ECMA Script Language 510

Extending Qt Applications with Scripts 519

Implementing GUI Extensions Using Scripts 523

Automating Tasks through Scripting 530

23. Platform-Specific Features 543

Interfacing with Native APIs 543

Using ActiveX on Windows 547

Handling X11 Session Management 559

24. Embedded Programming 567

Getting Started with Qt/Embedded Linux 568

Customizing Qt/Embedded Linux 570

Integrating Qt Applications with Qtopia 571

Using Qtopia APIs 576

Appendixes A. Obtaining and Installing Qt 589B. Building Qt Applications 593C. Introduction to Qt Jambi 605D. Introduction to C++ for Java and C# Programmers 623Index 665

About the Author :

Jasmin Blanchette is a Trolltech senior software engineer and is writing his M.Sc. thesis in computer science at the University of Oslo.


Mark Summerfield works as an independent trainer and consultant specializing in C++, Qt, Python, and PyQt, and is the author of Rapid GUI Programming with Python and Qt. Blanchette and Summerfield coauthored C++ GUI Programming with Qt 3 and the first edition of C++ GUI Programming with Qt 4.


Best Sellers


Product Details
  • ISBN-13: 9780132354165
  • Publisher: Pearson Education (US)
  • Publisher Imprint: Prentice Hall
  • Height: 242 mm
  • No of Pages: 752
  • Weight: 1402 gr
  • ISBN-10: 0132354160
  • Publisher Date: 21 Feb 2008
  • Binding: Hardback
  • Language: English
  • Spine Width: 44 mm
  • Width: 183 mm


Similar Products

Add Photo
Add Photo

Customer Reviews

     4.6  |  8 Reviews 
out of (%) reviewers recommend this product
Top Reviews
Rating Snapshot
Select a row below to filter reviews.
5
4
3
2
1
Average Customer Ratings
     4.6  |  8 Reviews 
00 of 0 Reviews
Sort by :
Active Filters

00 of 0 Reviews
SEARCH RESULTS
1–2 of 2 Reviews
    BoxerLover2 - 5 Days ago
    A Thrilling But Totally Believable Murder Mystery

    Read this in one evening. I had planned to do other things with my day, but it was impossible to put down. Every time I tried, I was drawn back to it in less than 5 minutes. I sobbed my eyes out the entire last 100 pages. Highly recommend!

    BoxerLover2 - 5 Days ago
    A Thrilling But Totally Believable Murder Mystery

    Read this in one evening. I had planned to do other things with my day, but it was impossible to put down. Every time I tried, I was drawn back to it in less than 5 minutes. I sobbed my eyes out the entire last 100 pages. Highly recommend!


Sample text
Photo of
    Media Viewer

    Sample text
    Reviews
    Reader Type:
    BoxerLover2
    00 of 0 review

    Your review was submitted!
    C++ GUI Programming with Qt4
    Pearson Education (US) -
    C++ GUI Programming with Qt4
    Writing guidlines
    We want to publish your review, so please:
    • keep your review on the product. Review's that defame author's character will be rejected.
    • Keep your review focused on the product.
    • Avoid writing about customer service. contact us instead if you have issue requiring immediate attention.
    • Refrain from mentioning competitors or the specific price you paid for the product.
    • Do not include any personally identifiable information, such as full names.

    C++ GUI Programming with Qt4

    Required fields are marked with *

    Review Title*
    Review
      Add Photo Add up to 6 photos
      Would you recommend this product to a friend?
      Tag this Book Read more
      Does your review contain spoilers?
      What type of reader best describes you?
      I agree to the terms & conditions
      You may receive emails regarding this submission. Any emails will include the ability to opt-out of future communications.

      CUSTOMER RATINGS AND REVIEWS AND QUESTIONS AND ANSWERS TERMS OF USE

      These Terms of Use govern your conduct associated with the Customer Ratings and Reviews and/or Questions and Answers service offered by Bookswagon (the "CRR Service").


      By submitting any content to Bookswagon, you guarantee that:
      • You are the sole author and owner of the intellectual property rights in the content;
      • All "moral rights" that you may have in such content have been voluntarily waived by you;
      • All content that you post is accurate;
      • You are at least 13 years old;
      • Use of the content you supply does not violate these Terms of Use and will not cause injury to any person or entity.
      You further agree that you may not submit any content:
      • That is known by you to be false, inaccurate or misleading;
      • That infringes any third party's copyright, patent, trademark, trade secret or other proprietary rights or rights of publicity or privacy;
      • That violates any law, statute, ordinance or regulation (including, but not limited to, those governing, consumer protection, unfair competition, anti-discrimination or false advertising);
      • That is, or may reasonably be considered to be, defamatory, libelous, hateful, racially or religiously biased or offensive, unlawfully threatening or unlawfully harassing to any individual, partnership or corporation;
      • For which you were compensated or granted any consideration by any unapproved third party;
      • That includes any information that references other websites, addresses, email addresses, contact information or phone numbers;
      • That contains any computer viruses, worms or other potentially damaging computer programs or files.
      You agree to indemnify and hold Bookswagon (and its officers, directors, agents, subsidiaries, joint ventures, employees and third-party service providers, including but not limited to Bazaarvoice, Inc.), harmless from all claims, demands, and damages (actual and consequential) of every kind and nature, known and unknown including reasonable attorneys' fees, arising out of a breach of your representations and warranties set forth above, or your violation of any law or the rights of a third party.


      For any content that you submit, you grant Bookswagon a perpetual, irrevocable, royalty-free, transferable right and license to use, copy, modify, delete in its entirety, adapt, publish, translate, create derivative works from and/or sell, transfer, and/or distribute such content and/or incorporate such content into any form, medium or technology throughout the world without compensation to you. Additionally,  Bookswagon may transfer or share any personal information that you submit with its third-party service providers, including but not limited to Bazaarvoice, Inc. in accordance with  Privacy Policy


      All content that you submit may be used at Bookswagon's sole discretion. Bookswagon reserves the right to change, condense, withhold publication, remove or delete any content on Bookswagon's website that Bookswagon deems, in its sole discretion, to violate the content guidelines or any other provision of these Terms of Use.  Bookswagon does not guarantee that you will have any recourse through Bookswagon to edit or delete any content you have submitted. Ratings and written comments are generally posted within two to four business days. However, Bookswagon reserves the right to remove or to refuse to post any submission to the extent authorized by law. You acknowledge that you, not Bookswagon, are responsible for the contents of your submission. None of the content that you submit shall be subject to any obligation of confidence on the part of Bookswagon, its agents, subsidiaries, affiliates, partners or third party service providers (including but not limited to Bazaarvoice, Inc.)and their respective directors, officers and employees.

      Accept


      Inspired by your browsing history


      Your review has been submitted!

      You've already reviewed this product!