diff --git a/lib/matplotlib/backends/_backend_tk.py b/lib/matplotlib/backends/_backend_tk.py index e7a77761afd4..77f6c574b4d0 100644 --- a/lib/matplotlib/backends/_backend_tk.py +++ b/lib/matplotlib/backends/_backend_tk.py @@ -840,8 +840,14 @@ def _rescale(self): def add_toolitem( self, name, group, position, image_file, description, toggle): frame = self._get_groupframe(group) - button = NavigationToolbar2Tk._Button(self, name, image_file, toggle, + buttons = frame.pack_slaves() + if position >= len(buttons) or position < 0: + before = None + else: + before = buttons[position] + button = NavigationToolbar2Tk._Button(frame, name, image_file, toggle, lambda: self._button_click(name)) + button.pack_configure(before=before) if description is not None: ToolTip.createToolTip(button, description) self._toolitems.setdefault(name, []) @@ -853,6 +859,7 @@ def _get_groupframe(self, group): self._add_separator() frame = tk.Frame(master=self, borderwidth=0) frame.pack(side=tk.LEFT, fill=tk.Y) + frame._label_font = self._label_font self._groups[group] = frame return self._groups[group]