Customer Reviews


29 Reviews
5 star:
 (19)
4 star:
 (4)
3 star:
 (3)
2 star:
 (3)
1 star:    (0)
 
 
 
 
 
Average Customer Review
Share your thoughts with other customers
Create your own review
 
 
Only search this product's reviews

The most helpful favorable review
The most helpful critical review


49 of 50 people found the following review helpful:
5.0 out of 5 stars Essential reading for wxPython developers
If, like me, you've been living under a rock (inasmuch as one can in the world of cross-platform GUI toolkits), you might not have heard much about wxPython. And if, like me, you were excited by the idea of quickly developing modern, robust GUI-driven applications that can run, without changes, on Windows, Mac OS X, and various UNIX-like systems, but turned off by the...
Published on July 4, 2006 by Michael Pirnat

versus
26 of 29 people found the following review helpful:
2.0 out of 5 stars Just barely adequate and not worth the money
I've probably been spoiled by the excellently written tutorial for Java's Swing. wxPython in Action just barely covers the necessities. It has slightly more content than what's available online, but the structure of it makes it highly unsuitable as a reference.

The book boasts numerous tables that list most commonly used methods or classes for each topic, but...
Published on May 12, 2007 by thirteen37


‹ Previous | 1 2 3 | Next ›
Most Helpful First | Newest First

49 of 50 people found the following review helpful:
5.0 out of 5 stars Essential reading for wxPython developers, July 4, 2006
By 
Michael Pirnat "geek errant" (Westlake, OH United States) - See all my reviews
(REAL NAME)   
This review is from: Wxpython in Action (Paperback)
If, like me, you've been living under a rock (inasmuch as one can in the world of cross-platform GUI toolkits), you might not have heard much about wxPython. And if, like me, you were excited by the idea of quickly developing modern, robust GUI-driven applications that can run, without changes, on Windows, Mac OS X, and various UNIX-like systems, but turned off by the downright spartan and unforgiving online documentation, you can get happy again--with the publication of Noel Rappin and wxPython co-creator Robin Dunn's wxPython in Action, there is finally a cogent, coherent hybrid of tutorial and reference for wxPython that will get you out from under all that clunky Tkinter code and doing cool stuff.

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.

The book is divided into three major sections, each six chapters long. The first, "Introduction to wxPython," is primarily a tutorial that walks the reader through the foundations of coding in wxPython-land. Newcomers to GUI programming might find certain portions a bit dense and mildly daunting--specifically chapters 2 and 3--but patience here will be rewarded with a good understanding of critically important concepts, such as wxPython's event handling model, that will be leveraged over and over again throughout the rest of the book. Chapter 4 introduces PyCrust and other tools from Patrick O'Brien's Py library that you can use for interactive debugging or even reuse within your own wxPython applications. Chapter 5 is a real gem, providing an excellent discussion and practical walkthrough of the refactoring process, an exploration of the benefits of the Model-View-Controller pattern and how to do MVC in wxPython, and illustrates how to unit test your wxPython app; these are non-glamourous topics that help aspiring developers grow into good professionals, and this is a perfect place to see these topics. Chapter 6 presents the construction of a simple but fairly polished toy sketch application, a satisfying achievement that nicely rounds out the introductory section.

The second section, "Essential wxPython," begins the more reference-oriented material, covering (unsurprisingly) the essential widgets of the wxPython toolkit: text labels, text entry, buttons, checkboxes, and the like in Chapter 7; frames (what most of us think of when they think of "windows") in Chapter 8; dialogs in Chapter 9; various flavors of menus in Chapter 10; the ins and outs of sizers in Chapter 11; and basic graphics manipulation (putting images on the screen, customizing the cursor, etc.) in Chapter 12. Each subsection builds logically on the one that came before it, and likewise each chapter follows from its predecessor, introducing new widgets just as you're ready for them. The text here is significantly lighter than in the first few chapters, so this reads fairly quickly.

The third section, "Advanced wxPython," covers some more complicated widgets and topics that probably won't be day-to-day concerns but which are important enough that, when you need to know about them, they're covered in the book: list controls (think Windows Explorer or Macintosh Finder) in Chapter 13; grid controls (think spreadsheet applications) in Chapter 14; the tree control (think file system trees, or registry editors) in Chapter 15; HTML widgets (a great idea for a help facility in your applications) in Chapter 16; the wxPython printing framework in Chapter 17. Finally, Chapter 18 rounds things out with a grab-bag of other topics that didn't merit their own chapters but which are good to know about anyway: using the clipboard, managing drag and drop operations, timers, and threading issues.

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.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


20 of 20 people found the following review helpful:
5.0 out of 5 stars Fantastic learning guide and reference manual, September 6, 2006
By 
Carl Scharenberg (Kansas City, KS, United States) - See all my reviews
(REAL NAME)   
This review is from: Wxpython in Action (Paperback)
I have dabbled in python some and played with 3 GUI toolkits for it: Tkinter, wxPython, and PyQT, but never had a good comprehensive manual to learn from. Scattered tutorials on the web of varying quality didn't help much.

Because of the 5-Star reviews for this book here on Amazon I purchased it and after having it 1 week I will add my 5-Star rating. This book is fantastic.

The writing is straightforward, the examples are clear, everything is explained concisely but comprehensively. I started at the first chapter and was very pleased that it started immediately with several simple GUI examples called bare.py and spare.py, for example.

Far too many programming books spend 1/3 of the book doing a basic tutorial of the language before you get to anything useful. Not this book. It states you should be somewhat familiar with Python and recommends another book if you need to learn it. So if you are beyond the basics and worried about getting another dumbed-down textbook, you can stop worrying; This book is ALL useful content.

I am immensely pleased with this book. Internet tutorials are useful for many things, so do not imagine I consider them useless for learning. But this book is superior and it is worth every penny.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


26 of 29 people found the following review helpful:
2.0 out of 5 stars Just barely adequate and not worth the money, May 12, 2007
This review is from: Wxpython in Action (Paperback)
I've probably been spoiled by the excellently written tutorial for Java's Swing. wxPython in Action just barely covers the necessities. It has slightly more content than what's available online, but the structure of it makes it highly unsuitable as a reference.

The book boasts numerous tables that list most commonly used methods or classes for each topic, but the list is not exhaustive. Coupled with the rapidly changing API, the lists are nearly useless. There are also no screenshots with the various widgets all shown for comparison purposes or just to figure out which one you want.

Sections are constructed around questions, such as "How can I use file picker?", or "What color names are predefined?" Which is fine usually, except sometimes, the authors merely cover a very specific question instead of properly introducing a new widget and its functionality.

There are numerous other examples of where the book falls short. Sizers, similar to Swing's LayoutManagers, get a very brief treatment, focusing mostly on the, in my opinion, rather useless GridSizer. Compare this with the Swing Tutorial's in-depth treatment of each individual LayoutManager.

Want to know how to handle mouse events like the scroll wheel? Tough luck, because there's absolutely nothing in the book about it. Instead, the book gives you the basics of event handling and probably expects you to look up the details of scroll wheel handling in the API docs online (which do not have example code).

Overall, this book may be fine for getting you started on a basic application, say, a GUI front-end to a database. Anything more advanced and you had better be ready to get down and dirty with the online API docs.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


13 of 14 people found the following review helpful:
4.0 out of 5 stars An introduction, not a reference, November 6, 2006
By 
Dennis Reinhardt (Palo Alto, CA USA) - See all my reviews
(REAL NAME)   
This review is from: Wxpython in Action (Paperback)
There is only one book on wxPython. If you have any serious interest, there are not a lot of choices. You have to get this book (Rappin and Dunn). The same is true of the wxWidgets by Smart, et. al.

This book contains lots of great samples of what you can do with wxPython. Great. If your problem looks like the sample, you can use the sample code.

If you want to go beyond the sample code, you are handicapped in two ways:

1) When flags, events, methods, etc. are discussed, the discussion introduces only the most often used. The tables which discuss the resources available to you start off incomplete.

2) The index is not strong. I count 544 pages covered by 1200 index entry lines. By contrast, the wxWidgets book is 662 pages, covered by 3240 index entry lines. When I need to look something up, I often find that neither book has an index entry for what I am looking for.

In contrast, Python Essential Reference by Beazley invariably has an entry for what I want to know. I hardly ever turn to the electronic documentation for Python itself as Beazley answers my Python questions in a single reference.

With wxPython and wxWidgets, I often need to turn to the electronic documentation because these two books need supplementation to serve as references.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 13 people found the following review helpful:
5.0 out of 5 stars Well-written, complete, excellent resource, May 8, 2006
By 
Patrick Mineault (Montreal, Qc Canada) - See all my reviews
(REAL NAME)   
This review is from: Wxpython in Action (Paperback)
The documentation for wxPython being lacking, I figured I'd buy this book to fill in the gaps. Not ony did this book document things that are obscure or inexistant in the current docs, but it is presented in an easily digestable fashion that makes it really easy to get up and write your own program. The book is split into three main parts, introduction to wxPython, essential wxPython, and advanced wxPython. The intro discusses the origins of wxPython, how to set up an application, add frames (windows), set up events, and work with common dialogs. The second part goes into detail regarding each of the standard widgets. There's a good thirty pages on using sizers, info that I found invaluable. The last part discusses advanced wxPython subjects, including using grids and trees, using the printing framework, threading, and drag and drop.

The format is quite pleasing. For the sections on the various widgets, there is usually a short intro, a few code examples, a table that shows the main API methods for the widget which is more useful than the online docs, and quite a few screenshots throughout. The code itself is usually short, to the point, and at most a page long, so it doesn't try to show 10 things at the same time and it's easy to copy-paste (if you have the ebook version, also available) into your own programs. As the previous reader said, it's easy to see that this was written by one of the authors of wxPython. Despite being written by an expert, it didn't skim over some of the seemingly obvious but confusing for a beginner things in the package. For example, the book will tell you how to redirect "print" output to the console instead of a separate window (answer: use App(false) when instantiating your app), what's the difference between a Frame (window) and a Panel anyway (answer: panel allows tabbing), why you don't need a panel when using a dialog (answer: tabbing is already built in), why there's no 'pack' or 'appendToDisplayList' anywhere (answer: the first argument in a widget gives the parent and the framework automatically adds it to the display list), and a whole bunch of other little things.

There was one thing I thought was missing however, and that is a chapter on maintaining portability across platforms (especially with regards to sizing). Apart from that, the book is flawless, highly recommended!
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 8 people found the following review helpful:
3.0 out of 5 stars great application, uninspiring book, April 28, 2007
By 
Eaviecoux (Portland, OR) - See all my reviews
This review is from: Wxpython in Action (Paperback)
wxPython is a great application, that helps python programmer create professional GUI's. Especially compared to other toolkits, like Tkinter.
Unfortunately, the book is not written well, despite the fact that the wxPython author Robin Dunn collaborated in writing it. It has a feel of a better manual, with no gems sprinkled in to make you want to read more and try some code. It is repetitious in listing the properties of inherited objects over and over, but lacking the meat when you need the one functionality.
On the other hand I like stylistics - good selection of font, proportion of white space to text and images, and my favorite - the code annotation with arrows and numbers, to explain the functionality chunk by chunk.
Overall the book is bland, but due to lack of other book on the subject, this is a case of one eyed king - you will still be doing lot of 'googling'.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


18 of 22 people found the following review helpful:
5.0 out of 5 stars THE Book on the Subject, April 11, 2006
This review is from: Wxpython in Action (Paperback)
Robin Dunn, one of the authors of this book is also one of the developers of the wxPython system. He is nothing else if not religiously converted to wxPython. And it is a delight to read a book where the author is so passionately dedicated to the subject. Many books are written by someone who has written 20+ titles on everything from how to use Excel to programming in the latest Microsoft language. When you read one by the developer you know you are not only getting the right scoop, but also you are getting an understanding of why/how the whole thing was developed and some commentary on why this particular package is the greatest thing since sliced bread.

This book is written for the programmer interested in moving to wxPython. It assumes that you have a working knowledge of the Python language and want to move up to the additional features in the wxWidget toolkit. It starts with a friendly tutorial to get your first couple of programs running, then it converts to an extensive reference for the large widget library.

This is THE book on wxPython.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


12 of 14 people found the following review helpful:
5.0 out of 5 stars VERY VERY HIGHLY RECOMMENDED!!, May 15, 2006
This review is from: Wxpython in Action (Paperback)
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.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


8 of 9 people found the following review helpful:
4.0 out of 5 stars Pretty much the only game in town, September 2, 2009
Amazon Verified Purchase(What's this?)
This review is from: Wxpython in Action (Paperback)
I'm a consultant and I wanted to use wxPython for a commercial application because a) my customer is comfortable with python, as I've delivered a previous product to them with it and b) I prefer developing apps in python over C++ because of the increase in productivity. A number of years ago I had worked on an app in wxWidgets (C++) with a friend, but we ran into problems and eventually abandoned wxWidgets. In the intervening years, of course, I had forgotten all the details about GUI programming (doing mostly console and embedded work).

As I tried to start work on a GUI application I've designed for my customer, I was frustrated by either the lack of or the poor quality of web-based documentation for wxPython. I decided to buy this book to help me get up to speed on the basics.

The book is definitely worth getting to help you get going doing basic wxPython programming. The demos that come with wxPython are great, but they are not good teaching tools for the basic principles. Realize that this book is only an introduction; there's no way they had enough room for a comprehensive treatise. I gave the book 4 stars only because I reserve 5 stars for books that I consider exceptional.

GUI (graphical user interface) toolkits are complex beasts. The learning curve to be able to do the things you want can be steep. Alas, there is no royal road to this knowledge. There are some things that can help, however. This book is certainly a good first step.

IMPORTANT: ignore the complaints of people who don't like this book and complain that it didn't help them do anything. I can tell the authors put a lot of work sweating over organization, pedagogy, what to include, examples, etc. You will get the basics of the information you need to pull yourself up by the bootstraps. Just don't expect to be able to turn to a page and have your application written for you -- things simply don't work that way. You will be expected to provide some sweat equity if you want to learn the ropes. The information is there -- I know, because I found it for myself. There will also be things that are missing that you think should be there -- the web can help you find those things.

Other things you should know about if you want to learn wxPython:

Definitely peruse and study the demos that come with wxPython. First, it will take you quite a bit of time just to go through them all since there are so many of them. You'll also be impressed with the creativity of the many folks who have made these contributions. Keep notes on the widgets that interest you most, as you'll want to go back later to find them and use them.

Manually laying out menus, dialogs, etc., via a text editor is tiresome. Get a tool like wxDesigner -- it can save you a lot of time and make it easier to make changes as your customers request them (or you see the need). Plus, all your resources for a project can go into one file. wxDesigner isn't a perfect tool (I'd like to see better documentation and more control over how things are done); however, it will pay for itself quickly if your time is valuable.

Check the wxPython wiki and FAQ. You will uncover answers to things you will struggle with.

wxPython comes with a tool called PyCrust that can help you discover things -- especially because of the lacking/poor wxPython reference documentation. In the directory I'm working in, I put a file named z.py that contains something like (Amazon's tool screws up the indenting):

import wx

class MyApp(wx.App):
def OnInit(self):
return True

#frame = wx.Frame(None)
app = MyApp()
frame = wx.MDIParentFrame(None)
window = wx.MDIChildFrame(frame)
panel = wx.Panel(frame)
button = wx.Button(frame)
textbox = wx.TextCtrl(frame)
togglebutton = wx.ToggleButton(frame)
toolbar = frame.CreateToolBar()
colorpicker = wx.ColourPickerCtrl(frame)
dialog = wx.Dialog(frame)
canvas = wx.Window(frame)
dc = wx.BufferedDC(wx.ClientDC(canvas))
brush = wx.Brush("black")
font = wx.Font(12, wx.SWISS, wx.NORMAL, wx.NORMAL)

I then start PyCrust and immediately type 'from z import *'. Now, if you look on the Namespace tab, you'll see a local variable tree. Click on the + and you'll expand the tree. Expand the variable of interest to see the attributes and methods for that type. Click on a symbol name and in the frame to the right, you'll see useful information about that thing, such as the docstring. Example: if you used the above z.py file, click on frame, then click on BackgroundColour. You'll see some details on this method. This will be your Obi Wan Kenobi when the documentation has let you down. A minor nit is that you'll often see C++ documentation rather than python, but it's pretty easy to figure things out.

Even with these resources, expect to spend a lot of time puzzling over things, cursing the lack of good documentation. But you'll eventually find what you need. In spite of the poor documentation, I'm extremely grateful for the powerful tool that is available, put together by lots of dedicated and hard-working volunteers.

In a couple of weeks, I've gotten most of a program I've envisioned for my customer working. It's going to be a very powerful tool for manipulating waveforms (partly because it uses numpy). I suspect they're going to be pretty surprised by the rich functionality in the prototype they see next week.
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


4 of 4 people found the following review helpful:
5.0 out of 5 stars wxPython In Action, February 16, 2008
This review is from: Wxpython in Action (Paperback)
Simply awesome. Awesome cubed:

(i) wxWidgets is a wonderful thing - a cross-platform windowing
toolkit that uses native widgets to give extremely pretty
cross-platform GUI applications.

(ii) wxPython is a fabulous implementation of wxWidgets in Python,
taking advantage of various Python fabulousities to make using
wxWidgets much easier than in C++. (If you do any programming
but you've never heard of Python run, don't walk, to
[..].)

(iii) The book is an excellent introduction to wxPython. I
had a little emergency, caused by the fact that my PC had
died and my Delphi programs didn't seem to work on the MAC
I was migrating to<g>. Starting with no knowledge of wxPython
(but with some familiarity with Python) in one three-day
weekend I was able to write a rudimentary spreadsheet application -
at the end of those three days it already worked better than
the Delphi application it was replacing (just because writing
Python is so easy I added a few features that I'd never got
around to adding to the Delphi version).

If you've been looking for something that does this sort of
thing then wxPython is what you want, and you want this book
to go with it.

(If you're a Python person who's been using tkinter: wxWidgets
is not much harder, it includes _much_ more builtin functionality,
and it gives _much_ nicer results, since it uses native widgets.)

David C. Ullrich
Help other customers find the most helpful reviews 
Was this review helpful to you? Yes No


‹ Previous | 1 2 3 | Next ›
Most Helpful First | Newest First

This product

Wxpython in Action
Wxpython in Action by Noel Rappin (Paperback - March 1, 2006)
Used & New from: $47.79
Add to wishlist See buying options