我创建了一个基于Tkinter的应用程序,它使用Matplotlib绘制波形。我想知道如何更改Matplotlib工具栏按钮的工具提示(我需要翻译英文描述,因为我的应用程序是捷克语)。我还想更改/翻译或删除在单击缩放或平移按钮时出现在工具栏面板旁边的描述(pan/zoom
,zoom rect
)。
我找到了一些关于如何在工具栏中添加或删除按钮的有用提示,但是还没有找到任何自定义工具提示/说明的建议。我认为这与前一种情况类似,因为我需要基于NavigationToolbar2TkAgg
创建一个新的工具栏类并以某种方式对其进行修改。有什么建议可以这么做吗?多谢提前。
第1部分
所以这应该很直接。
NavigationToolbar2TkAgg
类继承自NavigationToolbar2
,可以在matplotlib.backend_bases
中找到。如果查看NavigationToolbar2TkAgg
,您将看到按钮的弹出文本存储在名为self.toolitems
的属性中。此属性继承自基类,定义为:每个元组中的第二个项是鼠标悬停在按钮上时弹出的文本。要重写这个,只需子类化并创建自己的
toolitems
版本。例如(带填充文字):
这将为您提供一个普通的嵌入式matplotlib图形,但是当您将鼠标悬停在按钮上时,您将得到如下结果:
第2部分
问题的第二部分不那么优雅。“pan/zoom”和“zoom rect”的文本硬编码到工具栏的
pan
和zoom
方法中。实际文本保存在工具栏的self.mode
属性中。最简单的覆盖方法是为基类pan
和zoom
方法生成子类包装器。这些包装器从上面进入
CustomToolbar
类,如下所示:这只是一种方法,另一种方法可能是包装
set_message
方法来捕获和翻译特定的文本位。相关问题 更多 >
编程相关推荐