Я использую wx Python для моего GUI. На windows ПК, использующих «Segoe UI» в качестве шрифта по умолчанию, все выглядит хорошо. Мой коллега, работающий в Китае, имеет другой системный шрифт по умолчанию. Я не знаю, как он называется, но он в моих GUI мешает с пробелами. Я пытался исправить большинство из них, но также ListCtrls и т. Д. Использовать китайский шрифт.
Поэтому я ищу способ перезаписать шрифт по умолчанию, который использует мое wx-приложение, чтобы я не мог изменить его для каждого виджета. ,
Я пытался переписать его так:
self.SetFont(wx.Font(9, wx.DEFAULT, wx.NORMAL, wx.NORMAL, False,'Segoe UI'))
, но это работает в основном с панелями, а не с ListCtrls.
Я могу получить шрифт по умолчанию, например, так:
import wx
class MyFrame(wx.Frame):
def __init__(self, parent):
wx.Frame.__init__(self, parent, -1, "", size=(600,300))
fnt = wx.SystemSettings.GetFont(wx.SYS_DEFAULT_GUI_FONT)
wx.SystemSettings.
print(fnt.GetFaceName())
app = wx.App()
frame = MyFrame(None)
app.SetTopWindow(frame)
frame.Show()
app.MainLoop()
Но я никак не могу это изменить.