[Tutor] is it legal to have a class within a def
johnf
jfabiani at yolo.com
Thu Jan 3 17:45:10 CET 2008
On Thursday 03 January 2008 12:22:25 am Alan Gauld wrote:
> Are you sure you made it a modal dialog?
> Any dialog will do that if it is opened modelessly, you need to
> use the modal version to make it block the app.
Yes. I believe the way I have coded the dialog causes a bug. If I create a
static dialog and use showModal() it works as expected.
>
> Putting the class code in a functiion is legal but very inefficient
> and also prevents you from storing state etc in the dialog - you
> would need to reinitialise all valuues on each use. Thats OK if
> its simple but a lot of work(and slow) if its complex.
I am creating a function that does a lookup of PK or FK fields. If the user
does type in the correct identifier then the dialog does not appear and is
not created. If the user types in a partial of the key then the dialog
appears and the user picks from the list. The details of the dialog are
dynamic for each call (based on some meta data) of the showModal().
So I started thinking why would I need the class outside of the function. If
I instead used "import class" would I get a performance improvement? The
function creates an instance each time it is required and then releases and
closes.
I am very interested in this possible difference between importing the class
vs using the inline class. Any thoughts as what the difference is will help
me understand Python a little better.
--
John Fabiani
More information about the Tutor
mailing list