Buy new:
-53% $32.96$32.96
Ships from: Amazon Sold by: ViVa1
Save with Used - Very Good
$24.48$24.48
Ships from: Amazon Sold by: KAYLEY'S PRIME STORE
Return this item for free
We offer easy, convenient returns with at least one free return option: no shipping charges. All returns must comply with our returns policy.
Learn more about free returns.- Go to your orders and start the return
- Select your preferred free shipping option
- Drop off and leave!
Download the free Kindle app and start reading Kindle books instantly on your smartphone, tablet, or computer - no Kindle device required.
Read instantly on your browser with Kindle for Web.
Using your mobile phone camera - scan the code below and download the Kindle app.
Follow the authors
OK
C++ GUI Programming with Qt 4 (2nd Edition) (Prentice Hall Open Source Software Development Series) 2nd Edition
Purchase options and add-ons
- ISBN-109780132354165
- ISBN-13978-0132354165
- Edition2nd
- PublisherPrentice Hall
- Publication dateJanuary 1, 2008
- LanguageEnglish
- Dimensions7 x 1.5 x 9.5 inches
- Print length718 pages
Customers who viewed this item also viewed
Editorial Reviews
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.
Excerpt. © Reprinted by permission. All rights reserved.
Qt is a comprehensive C++ application development framework for creating cross-platform GUI applications using a "write once, compile anywhere" approach. Qt lets programmers use a single source tree for applications that will run on Windows 98 to Vista, Mac OS X, Linux, Solaris, HP-UX, and many other versions of Unix with X11. The Qt libraries and tools are also part of Qt/Embedded Linux, a product that provides its own window system on top of embedded Linux.
The purpose of this book is to teach you how to write GUI programs using Qt 4. The book starts with "Hello Qt" and quickly progresses to more advanced topics, such as creating custom widgets and providing drag and drop. The text is complemented by a set of examples that you can download from the book's web site, http://www.informit.com/title/0132354160. Appendix A explains how to download and install the software, including a free C++ compiler for those using Windows.
The book is divided into three parts. Part I covers all the fundamental concepts and practices necessary for programming GUI applications using Qt. Knowledge of this part alone is sufficient to write useful GUI applications. Part II covers central Qt topics in greater depth, and Part III provides more specialized and advanced material. You can read the chapters of Parts II and III in any order, but they assume familiarity with the contents of Part I. The book also includes several appendixes, with Appendix B showing how to build Qt applications and Appendix C introducing Qt Jambi, the Java version of Qt.
The first Qt 4 edition of the book built on the Qt 3 edition, although it was completely revised to reflect good idiomatic Qt 4 programming techniques and included new chapters on Qt 4's model/view architecture, the new plugin framework, embedded programming with Qt/Embedded Linux, and a new appendix. This extended and revised second edition has been thoroughly updated to take advantage of features introduced in Qt versions 4.2 and 4.3, and includes new chapters on look and feel customization and application scripting as well as two new appendixes. The original graphics chapter has been split into separate 2D and 3D chapters, which between them now cover the new graphics view classes and QPainter's OpenGL back-end. In addition, much new material has been added to the database, XML, and embedded programming chapters.
This edition, like its predecessors, emphasizes explaining Qt programming and providing realistic examples, rather than simply rehashing or summarizing Qt's extensive online documentation. Because the book teaches solid Qt 4 programming principles and practices, readers will easily be able to learn the new Qt modules that come out in Qt 4.4, Qt 4.5, and later Qt 4.x versions. If you are using one of these later versions, be sure to read the "What's New in Qt 4.x" documents in the reference documentation to get an overview of the new features that are available.
We have written the book with the assumption that you have a basic knowledge of C++, Java, or C#. The code examples use a subset of C++, avoiding many C++ features that are rarely needed when programming Qt. In the few places where a more advanced C++ construct is unavoidable, it is explained as it is used. If you already know Java or C# but have little or no experience with C++, we recommend that you begin by reading Appendix D, which provides sufficient introduction to C++ to be able to use this book. For a more thorough introduction to object-oriented programming in C++, we recommend C++ How to Program by P. J. Deitel and H. M. Deitel (Prentice Hall, 2007), and C++ Primer by Stanley B. Lippman, Jos¿Lajoie, and Barbara E. Moo (Addison-Wesley, 2005).
Qt made its reputation as a cross-platform framework, but thanks to its intuitive and powerful API, many organizations use Qt for single-platform development. Adobe Photoshop Album is just one example of a mass-market Windows application written in Qt. Many sophisticated software systems in vertical markets, such as 3D animation tools, digital film processing, electronic design automation (for chip design), oil and gas exploration, financial services, and medical imaging, are built with Qt. If you are making a living with a successful Windows product written in Qt, you can easily create new markets in the Mac OS X and Linux worlds simply by recompiling.
Qt is available under various licenses. If you want to build commercial applica-tions, you must buy a commercial Qt license from Trolltech; if you want to build open source programs, you can use the open source (GPL) edition. The K Desktop Environment (KDE) and most of the open source applications that go with it are built on Qt.
In addition to Qt's hundreds of classes, there are add-ons that extend Qt's scope and power. Some of these products, like the Qt Solutions components, are avail-able from Trolltech, while others are supplied by other companies and by the open source community; see http://www.trolltech.com/products/qt/3rdparty/ for a list of available add-ons. Trolltech's developers also have their own web site, Trolltech Labs (http://labs.trolltech.com/), where they put unofficial code that they have written because it is fun, interesting, or useful. Qt has a well-established and thriving user community that uses the qt-interest mailing list; see http://lists.trolltech.com/ for details.
If you spot errors in the book, have suggestions for the next edition, or want to give us feedback, we would be delighted to hear from you. You can reach us at qt-book@trolltech.com. The errata will be placed on the book's web site http://www.informit.com/title/0132354160.
Product details
- ASIN : 0132354160
- Publisher : Prentice Hall
- Publication date : January 1, 2008
- Edition : 2nd
- Language : English
- Print length : 718 pages
- ISBN-10 : 9780132354165
- ISBN-13 : 978-0132354165
- Item Weight : 2.8 pounds
- Dimensions : 7 x 1.5 x 9.5 inches
- Best Sellers Rank: #1,652,560 in Books (See Top 100 in Books)
- #337 in C++ Programming Language
- #359 in User Experience & Website Usability
- #1,802 in Software Development (Books)
- Customer Reviews:
About the authors

Mark Summerfield is a computer science graduate and qualified teacher with many years experience working in the software industry, primarily as a programmer and documenter. Mark owns Qtrac Ltd., http://www.qtrac.eu, where he works as a programmer and where he created and now maintains his commercial software --- PDF comparison tools DiffPDF (GUI) and comparepdfcmd (command line). He also created the open source UXF (Uniform eXchange Format), and wrote the first UXF libraries.
All Mark's books are aimed at programmers and others, such as students, scientists, and engineers, who already have some programming experience (how much depends on the individual book). Each solo book has its own page on the Qtrac website from which the source code can be downloaded and that lists the book's errata. All the books are designed to teach technologies that Mark loves and has found to be the best of their kind.

Jasmin Blanchette (1978-) worked for Trolltech in Oslo, Norway from 2000 to 2008 as a software engineer and documentation manager. He (sic) obtained his M.Sc. in computer science from the University of Oslo in 2008 and is now working on his Ph.D. in Munich (http://www4.in.tum.de/~blanchet/).
Customer reviews
Customer Reviews, including Product Star Ratings help customers to learn more about the product and decide whether it is the right product for them.
To calculate the overall star rating and percentage breakdown by star, we don’t use a simple average. Instead, our system considers things like how recent a review is and if the reviewer bought the item on Amazon. It also analyzed reviews to verify trustworthiness.
Learn more how customers reviews work on AmazonCustomers say
Customers find the book to be an excellent introduction to C++ GUI programming with Qt, with one customer noting its detailed breakdowns of hows and whys. They appreciate its pacing, with one review highlighting its well-structured chapters.
AI Generated from the text of customer reviews
Select to learn more
Customers appreciate the book's knowledge level, describing it as an excellent tutorial that serves as a great introduction to Qt, with one customer noting its detailed breakdowns of hows and whys.
"...Every single example includes a description, and every single description exactly matches and illuminates what the example code is doing...." Read more
"...It's advanced brother (also available here) covers few more pragmatic programming techniques, but is also a bit dated...." Read more
"...not finished the book yet but I find it to do a good job in explaining a pretty complicated subject and can get up and creating nice apps pretty..." Read more
"...quickly appreciated all the little details in this book and the very complete index (the index is over 50 pages long)...." Read more
Customers appreciate the pacing of the book, with one noting its well-structured and nicely arranged chapters.
"...Chapters are nicely arranged in "basic", "intermediate", and "advanced" sections...." Read more
"Book was in great shape Interesting language" Read more
"...It is very well structured and easy to read!" Read more
Top reviews from the United States
There was a problem filtering reviews. Please reload the page.
- Reviewed in the United States on June 8, 2011Format: HardcoverVerified PurchaseThis book is the model that all others should emulate. I haven't read every single page of it, nor do I expected to, nor do I expect to _have_ to. Long before I could read every word or try every example, I will _understand_ Qt and will be confident and expert enough to dive into it on my own.
Here's what makes this book amazing: every single example works exactly as printed. Every single example includes a description, and every single description exactly matches and illuminates what the example code is doing. Every single chapter introduces an area of Qt to a sufficient depth to get real, production code up and running (in my case, in XP, Vista64, and MacOS).
Will you still need to read the on-line docs? Sure. And when you do, you'll understand them better because of the introduction the book provided.
I have well over 100 programming books accumulated over a 25 year academic and professional career, and this is among the best in accomplishing what it's supposed to. If you want to learn Qt, get it. 'nuff said.
- Reviewed in the United States on April 2, 2012Format: HardcoverVerified PurchaseWhile this text is now out of date in terms of the many important `minor' improvements and the IDE in the last ~2 years, it remains the very best place to start things I have found. It's advanced brother (also available here) covers few more pragmatic programming techniques, but is also a bit dated. Of course on top of all that is the announcement in 2011 by Nokia that they will be using a Windows approach for future phones which has many people questioning the Qt future itself. I presume you are reading this because you decided (in spite of that) to try Qt for a project of you own.
This book is fairly dense but technically quite precise. I find myself re-reading the first ~four chapters to grasp the key terminology and I continue to find Qt more elegant than Mac or Windows who each have decades of baggage at this point. The authors know their stuff. Once you have the basics, the remaining 2/3rd cover the normal collection of programming tasks in a direct way. Qt is much more then just the GUI part. Unless your tasks are very diverse, you will likely only read what you need. The only `missing' content to my mind is a deeper review of debugging methods when things go amiss.
If you are not moderately up on GUIs and the concepts of event driven programming in general, you might be overwhelmed a bit. But if you are, then you will not have your time wasted on such things. Rather, the text simply states how Qt does what it does with a bit more perspective on the design approach then the on-line documents have. That's was what I needed to fit it into my world view. It is not to my mind a restatement of the man pages as another reviewed stated, rather it is more like the style found in the 1984 classic "Inside Macintosh " manuals.
- Reviewed in the United States on January 11, 2013I chose this book being completely new to the Qt libraries and Linux as well, though Qt is not for just Linux and shows windows created under the various operating systems. I have not finished the book yet but I find it to do a good job in explaining a pretty complicated subject and can get up and creating nice apps pretty quickly. But being such a complicated subject, make sure to have the Qt documentation in your favorites list of your web browser and practice.
- Reviewed in the United States on August 14, 2009Format: HardcoverVerified PurchaseThis book was my first introduction to Qt, and I've been using it for about two weeks now on a project. Other reviewers have argued that it doesn't give enough of a big-picture view. It is true that the book has many pages of annotated source code. I started off thinking the verbosity was daunting, but when I actually tried to start using Qt, I quickly appreciated all the little details in this book and the very complete index (the index is over 50 pages long). The Trolltech website is a good reference for putting everything in one place, but this book is great for stepping through an example in detail.
One caveat: I've used other widget sets (Gtk, Tk) before with other languages, but have no previous experience with Qt, and not much experience with C++ (so I found the "Intro to C++" chapter for Qt programmers a helpful summary).
- Reviewed in the United States on October 19, 2009Format: HardcoverVerified PurchaseI realize its difficult to make examples that appeal to everybody. This book have some very good example ideas, but often lack in execution. Having spent the last few years with Java & C# it annoys me a lot that C++ programmers still continue to place a lot of initialization code into main(). In this book, eg. in chapter 5 the authors creates a custom plotter widget, that would be very useful as an example if it wasn't half made. Remember that Qt is OO and then you don't require the user to modify the class initialization in order to use the class. Every class needs to be able to stand on its own and initializations come in the constructor.
Like a previous reviewer I would also like to see a Qt book that doesn't follow the exact same topic layout as the official manual, variety is always good.
I'd like to end with saying that this is good book, however there is a bit too much information in some of the lengthy examples. If you manage to get through the chapters though, I'm sure you're well set up for a job as a Qt programmer.
Top reviews from other countries
-
Cliente AmazonReviewed in Italy on December 7, 20185.0 out of 5 stars Mi piace molto
Format: HardcoverVerified PurchaseScritto in modalità molto chiara. Ho imparato molto veloce con questo libro.
-
MeatRunnerReviewed in Germany on January 2, 20145.0 out of 5 stars Das Referenzwerk!
Format: HardcoverVerified PurchaseAnders als das eher enttäuschende "... Design Patterns ..." des selben Verlages hat mich dieses Buch sofort in seinen Bann gezogen. Alle Beispiele sind leicht nachvollziehbar, die Lernkurve ist stetig. Viele Tips, warum etwas so und nicht anders funktioniert. So muß das sein!
Dieses Buch erinnert mich sehr an das Niveau von "Buchheit" (Win16) und "Petzold" (Win32). Ich würde es darum als "DAS ESSENTIELLE BUCH FÜR Qt-EINSTEIGER" bezeichnen.
Das einzige, was mich ärgert ist, daß ich es nicht schon vor 3 Jahren gekauft habe, als in c't immer mal wieder Qt-Projekte vorgestellt wurden. Habe viel Lebens- und Arbeitszeit vertrödelt weil ich mich nicht ernsthaft mit Qt befaßt habe. Hätte ich dieses Buch eher in die Finger bekommen, wäre das anders gelaufen!
Dale_in_CanadaReviewed in Canada on April 29, 20125.0 out of 5 stars Qt4 and this Book are wonderful
Format: HardcoverVerified PurchaseI am working with the book and Qt4. The book is a valuable guide for people using C++ and Qt4 to develop platform-independent GUI applications. The book shows how to do this both in C++ code and also by using Qt Designer as a visual design tool. This gives the reader the grounding necessary to do more advanced work with Qt4. The earlier reviewer who wants to use Qt Designer rather than C++ code may have missed page 13 which states: "We will create our first dialog purely by writing code to show how it is done. Then we will see how to build dialogs using Qt Designer, Qt's visual design tool. Using Qt Designer is a lot faster than hand-coding and makes it easy to test different designs and to change designs later." In brief, I found the book to be an excellent source of training for learning Qt and its sophisticated use of C++.
vhReviewed in India on June 16, 20215.0 out of 5 stars Fantastic book, clearly written by those who have used it extensively
I've gone thru the first 3 chapters as yet and I can say its a fantastic book, very clearly explained. Even subtle points are explained. Its evident that its written by those who have used Qt extensively.
The only thing I'd like to point out is that it is written keeping Qt4 in mind. In my installation I had Qt5. To adapt to this, I had to make the following change, viz. add the following in the ".pro" file:
QT += widgets
That said, the book could have spent a few more pages on walking thru the installation. There are a few gotchas which are not so evident. Eg. I broke my head when I installed 64-bit Qt components but my MSVC was 32-bit I had forgotten; Then there are also gotchas around how to use MSVC as the main IDE (eg. the steps for running qtenv2.bat, vcvarsall.bat, etc are not documented anywhere. I had to Google up a lot and find out this info).
BTW: Qt installation sucks. It is painfully slow. It seems to download and install one file/component at a time. I don't know why they didn't architect it so as to download all in one shot (which'd be much faster) and then do the installation.
-
niniReviewed in France on September 13, 20115.0 out of 5 stars Très bien pour un démarrge avec Qt
Format: HardcoverVerified PurchaseJe commence à pratiquer avec Qt, je trouve ce livre bien fait. Les paragraphes sont illustrés par des exemples bien détaillés. Attention, il nécessite une connaissance minimum du langage C++ et des outils de compilation.




