diff options
-rw-r--r-- | Lib/turtle.py | 15 | ||||
-rw-r--r-- | Misc/NEWS.d/next/Library/2021-04-25-13-34-13.bpo-43937.isx95l.rst | 1 |
2 files changed, 8 insertions, 8 deletions
diff --git a/Lib/turtle.py b/Lib/turtle.py index 13f662a..024fed8 100644 --- a/Lib/turtle.py +++ b/Lib/turtle.py @@ -464,20 +464,18 @@ class TurtleScreenBase(object): a corresponding TurtleScreenBase class has to be implemented. """ - @staticmethod - def _blankimage(): + def _blankimage(self): """return a blank image object """ - img = TK.PhotoImage(width=1, height=1) + img = TK.PhotoImage(width=1, height=1, master=self.cv) img.blank() return img - @staticmethod - def _image(filename): + def _image(self, filename): """return an image object containing the imagedata from a gif-file named filename. """ - return TK.PhotoImage(file=filename) + return TK.PhotoImage(file=filename, master=self.cv) def __init__(self, cv): self.cv = cv @@ -811,7 +809,7 @@ class TurtleScreenBase(object): >>> screen.mainloop() """ - TK.mainloop() + self.cv.tk.mainloop() def textinput(self, title, prompt): """Pop up a dialog window for input of a string. @@ -966,6 +964,8 @@ class TurtleScreen(TurtleScreenBase): def __init__(self, cv, mode=_CFG["mode"], colormode=_CFG["colormode"], delay=_CFG["delay"]): + TurtleScreenBase.__init__(self, cv) + self._shapes = { "arrow" : Shape("polygon", ((-10,0), (10,0), (0,10))), "turtle" : Shape("polygon", ((0,16), (-2,14), (-1,10), (-4,7), @@ -989,7 +989,6 @@ class TurtleScreen(TurtleScreenBase): self._bgpics = {"nopic" : ""} - TurtleScreenBase.__init__(self, cv) self._mode = mode self._delayvalue = delay self._colormode = _CFG["colormode"] diff --git a/Misc/NEWS.d/next/Library/2021-04-25-13-34-13.bpo-43937.isx95l.rst b/Misc/NEWS.d/next/Library/2021-04-25-13-34-13.bpo-43937.isx95l.rst new file mode 100644 index 0000000..cb4d90b --- /dev/null +++ b/Misc/NEWS.d/next/Library/2021-04-25-13-34-13.bpo-43937.isx95l.rst @@ -0,0 +1 @@ +Fixed the :mod:`turtle` module working with non-default root window. |