WxPython in Actionby Noel Rappin PH.D., Robin Dunn
Because they are often large and complex, GUI programming tool kits can be hard to use. wxPython is a combination of the Python programming language and the wxWidgets toolkit, which allows programmers to create programs with a robust, highly functional graphical user interface, simply and easily. wxPython combines the power of an exceptionally complete user
Most Helpful Customer Reviews
See all customer reviews
Like other volumes in Manning's In Action series, wxPython presents a comfortable combination of introduction, overview, and example that encourages exploration and experimentation. The text is clear and concise, offering a no-nonsense explanation of the most relevant portions of the wxPython libraries and the best practices for their use, delivered at a measured pace that never manages to overwhelm, and uncannily launches into explanations of your questions just as they arise. Numerous reference tables provide a handy guide to the details (object properties, method signatures, events, etc.) that you'll be coming back to in your own future development. The expanded table of contents, listing each of the 'how do I...' subsections of each chapter, is also a nice feature that will help make this a valuable reference. Code examples are functional, clean, and on-topic, just the right size to illustrate the concept at hand, and nearly always accompanied by illustrations of the resulting behavior. All the code is available online, and it's worth your time to either download it and give it a spin, or key it yourself and see how it behaves on your OS of choice. An especially nice feature of the example code in the book is that it's well annotated, either with a brief note or a bulleted number that will be referenced in an in-depth explanation immediately following the code listing this helps the reader quickly zero in on the essential elements of the example, and it's surprising that such a useful technique is not more frequently encountered in programming books. A few errors seem to have snuck through the editing process, though, so deeply involved readers will want the errata nearby when monkeying with example code. Manning's 'Author Online' forums are also a great resource if you get stumped along the way. To be fair, there are a few imperfections here, but they mostly amount to personal nit-picking. While it's probably not essential, there's no discussion of sound or other multimedia functionality and from a structural standpoint, the book would have benefitted from a brief afterword to launch the reader into further reading or development activity. Finally, and this might be slightly unfair as I'd just finished reading one of O'Reilly's Head First books when I picked up wxPython in Action, this book could probably use a little more personality when the occasional editorial comment sneaks through, it's a welcome break from the readable but positively arid expanses of text and examples. That said, there's obviously still a lot here to love. wxPython is clearly the way to build cross-platform GUI apps in Python even Guido van Rossum, Python's creator and benevolent dictator, advocates it, saying, 'wxPython is the best and most mature cross-platform GUI toolkit... the only reason wxPython isn't the standard Python GUI toolkit is that Tkinter was there first.' wxPython in Action is clearly the authoritative resource on the subject, a great introduction that will also serve as an excellent reference for years to come. Recommended for wxPython n00bs and gurus alike.
If you are familiar with the Python programming language, this book is for you. Authors Noel Rappin and Robin Dunn, have done an outstanding job of writing a book that is more of a useful resource than the existing online documentation. Rappin and Dunn, begin by introducing wxPython and give some background on the technologies used to create wxPython. Then, they show you how to start a wxPython program, and how to manage its lifecycle. The authors continue by discussing how events are handled, and how you can use them as hooks to drive your functionality. Next, they show you how to make wxPython easier to handle with PyCrust. Then, the authors discuss best practices in three areas that are often difficult for GUI programmers. The authors continue by showing you how to work with the basic building blocks. Next, they cover the API for the basic widget set, including text fields, buttons, list boxes, and the like. Then, the authors cover how frames work, what kind of frames there are, and how to manage widgets within a frame. They also cover how modal dialog boxes work, as well as the standard predefined wxPython dialogs. The authors continue by showing you how to add menus to the menu bar, and menu items to a menu. Next, they show you how to use widgets with sizers, and what kind of layout is best suited to each. They also show you how to manipulate basic graphical images. The authors continue by showing you how to build list controls and managing items. Then, they show you how to coordinate the grid control. Next, they show you how to climb the tree control. Next, they show you how to incorporate HTML into your application. They also explore how all print, print data, and print preview objects work together. Finally, they cover some important features that are not quite long enough to justify a chapter on their own, including cut and paste, drag and drop, and multithreading. How you use this most excellent book will depend on your wxPython knowledge. The authors designed the book to be useful for both experts and novices, but they expect that different parts of the book will have more or less resonance for users at different levels.