Am 22.06.16 um 22:53 schrieb Pierre-Alain Dorange:
Christian Gollwitzer <aurio...@gmx.de> wrote:
If you do not see the background, then indeed the canvas is not resized,
which means the gridding options are wrong. Looking at your code, I see
this:
self.map.grid(row=1,column=1,rowspan=4,columnspan=2,padx=2,pady=2)
Here, you do not specify any sticky options, which means it should
default to centering. Try adding NSEW sticky options.
That's magic !
It works just fine...
:)
If i do understand NSEW sticky option make the widget autoadjust to the
available space. The default option is just CENTERED... I do not explore
this, i just thought NSEW was also CENTERED.
IMHO the sticky options in grid are actually very intuitive, once you
understand them. The widget gets "pinned" on each side that is mentioned
in the sticky set. If it is not pinned in one direction, then it is
centered. So, for instance sticky=N means pin it on top (North), but
neither south, east nor west. This means, the widget is aligned to the
top of the cell and centered in left-right direction, but does not
resize. Whereas, sticky=NS means pin it north and south, which is
stretching in vertical direction to fill the height, center in
left-right. sticky=NSEW pins it at all four sides which consequently
stretches it in both directions.
BTW, the Tkinter wrapper is a bit clumsy for this option. In the
original Tk, the sticky option is just a string. You can still pass that
and do
sticky='nsew'
instead of the clumsy
sticky=Tkinter.N+Tkinter.S+Tkinter.E+Tkinter.W
Christian
--
https://mail.python.org/mailman/listinfo/python-list