Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/341.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通用wxPython样式_Python_Wxpython - Fatal编程技术网

通用wxPython样式

通用wxPython样式,python,wxpython,Python,Wxpython,我对wxPython相当陌生,一直在使用它构建GUI。然而,我发现使用“wx.Font”然后使用“SetFont”来进行更改很乏味。在我的gui中,是否有任何方法可以普遍更改所有字体的样式?在创建子窗口小部件之前,必须为窗口小部件的父窗口小部件设置字体。另见: 设置父级字体后,其子级也将继承该字体。如果要在程序运行后更改字体,则必须迭代所有子项并调用它们的每个SetFont方法。您可以使用parent.GetChildren()获取子窗口小部件的列表。在我的应用程序中,这适用于许多情况,但

我对wxPython相当陌生,一直在使用它构建GUI。然而,我发现使用“wx.Font”然后使用“SetFont”来进行更改很乏味。在我的gui中,是否有任何方法可以普遍更改所有字体的样式?

在创建子窗口小部件之前,必须为窗口小部件的父窗口小部件设置字体。另见:


设置父级字体后,其子级也将继承该字体。如果要在程序运行后更改字体,则必须迭代所有子项并调用它们的每个SetFont方法。您可以使用parent.GetChildren()获取子窗口小部件的列表。

在我的应用程序中,这适用于许多情况,但有一些元素和窗口小部件不会自动继承此值。我想知道是否会发生这种情况。您是使用本机小部件还是自定义小部件?据我所知,大部分是本机小部件。我看到奇怪的地方是特定用途的小部件。例如,对于ComboTreeBox,所选值显示正确,但当我展开控件以查看可用选项时,字体不会在该面板中继承。我想这与ComboTreeBox的实现方式有关,但肯定有一些小部件无法完全应用。是的,自定义小部件可能无法工作,需要显式设置字体。