我正在尝试获取系统字体,稍微修改一下然后设置为静态文本:
panel = wx.Panel(self)
font = wx.SystemSettings.GetFont(wx.SYS_SYSTEM_FONT)
font.SetPointSize(20)
vbox = wx.BoxSizer(wx.VERTICAL)
hbox1 = wx.BoxSizer(wx.HORIZONTAL)
class_name_text = wx.StaticText(panel, label='Class name')
class_name_text.SetFont(font)
hbox1.Add(class_name_text)
vbox.Add(hbox1)
panel.SetSizer(vbox)
但显然文本仍然保留点大小为12(看起来如此)。但是,当我在更改之前和之后打印点大小时似乎没问题(之前的12个 - 之后的20个)。 A试图创建自己的字体并更改其属性 - 在这种情况下一切正常。有什么问题?
答案 0 :(得分:0)
wx.SystemSettings.GetFont(wx.SYS_SYSTEM_FONT)
返回的我的系统字体有点奇怪,因为它不支持更多尺寸,但是默认。当我使用SetFaceName
方法更改字体时,SetPointSize
开始工作。所以,问题出在我的系统中,可能是系统字体特别