Modifying TKinter widgets defined in Modules

M

Marcus Schneider

Sorry if this is an extremely stupid question:

I produced some Python modules with TKinter stuff and now I want to
use that from my main program. The windows have wuite some user
interaction. It's easy to bring them to the screen, but how do I make
the communication (i.e. variables) between the main and the modules
happen?

Currently I call a function from the main and pass all variables in
the function call, but with more then 25 variables this looks odd.

And now I have to change variables in the main from the module and
that doesn work at all, does it?

Or can I access widget definitions from the main??

What is the usual, elegant way to handle that?

Thanks for any hint ;)
 
M

Michael Peuser

Marcus,
I have no clear concept of your problem ("nix verstehen"). Newbie? What is a
"main"? What in fact is the overall structure of your software system? You
have first di decide where to put your "variables". In Python you will
generally use an object. This can be made visible as you like. You however
have do decide who instantiates this object ("main" or one of the "moduls")?

The best way seems to do this in your "main":

class Data: pass
myData=Data()

Put all your 25 variables into it (myData.varX=None ....), then you pass
"myData" as a parameter to your moduls...

Is this what helps?
Kindly
Michael P
 
M

Marcus Schneider

Michael,

that is very interesting; in the meantime I managed for the first time
to create an instance of a class that contains my TKinter widgets in a
module, so I obviously messed around with some basics...

But my questionw as also about "style" of programming Python. Would I
want to use modules just for the widget definition or would I rather
want to put widgets and functions together in one module?

What kind of structure is considered to by "good style" in Python?

Thanks for the patience...
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,744
Messages
2,569,482
Members
44,900
Latest member
Nell636132

Latest Threads

Top