🌐 AI搜索 & 代理 主页
Skip to content

Commit cc4a2f8

Browse files
Impaler343daniilS
andcommitted
Added API note, enhanced gallery example, applied fix
Co-authored-by: daniilS <daniil.soloviev@gmail.com>
1 parent 4edc215 commit cc4a2f8

File tree

3 files changed

+13
-2
lines changed

3 files changed

+13
-2
lines changed
Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
Default focus behavior of ``FigureCanvasTkAgg``
2+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3+
4+
Previously, when a `.FigureCanvasTkAgg` object was created, focus was set to the
5+
canvas by default. Now, focus is not set anymore. If focus is desired on the canvas,
6+
it can be set explicitly after creation using the `focus_set()` method of Tkinter
7+
widgets.
8+
9+
See :doc:`../../../gallery/user_interfaces/embedding_in_tk_sgskip` for an example of
10+
focus-setting in an embedded Matplotlib figure in a Tkinter application.

galleries/examples/user_interfaces/embedding_in_tk_sgskip.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,4 +62,7 @@ def update_frequency(new_val):
6262
toolbar.pack(side=tkinter.BOTTOM, fill=tkinter.X)
6363
canvas.get_tk_widget().pack(side=tkinter.TOP, fill=tkinter.BOTH, expand=True)
6464

65+
# Explicitly set focus to canvas for it to receive key press events
66+
canvas.get_tk_widget().focus_set()
67+
6568
tkinter.mainloop()

lib/matplotlib/backends/_backend_tk.py

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,8 +255,6 @@ def filter_destroy(event):
255255
CloseEvent("close_event", self)._process()
256256
filter_destroy_id = root.bind("<Destroy>", filter_destroy, "+")
257257

258-
self._tkcanvas.focus_set()
259-
260258
self._rubberband_rect_black = None
261259
self._rubberband_rect_white = None
262260

0 commit comments

Comments
 (0)