从wxPython 2.8切换到2.9时的字体问题

0 投票
1 回答
845 浏览
提问于 2025-04-16 13:32

我最近把wxPython从2.8升级到了2.9。我用2.9运行了我的一个程序,其他部分都正常,只有动态调整字体大小的那部分代码出了问题。看起来我修改字体大小的那行代码是问题的关键。

代码片段:

    sw, sh = self.get_geom(opt='wh')

    font = wx.Font(sw/10 , wx.NORMAL, wx.NORMAL, wx.NORMAL) # This is the line that's giving me trouble 

    self.ST.SetFont(font) # self.ST is a static text widget.

错误信息:

wx._core.PyAssertionError: C++ assertion "ff_family != (0<<4)" failed at ..\..\src\msw\font.cpp(672) in wxNativeFontInfo::SetFamily(): unknown wxFontFamily

我是在Windows 7系统上运行的,不知道这是否有影响。

1 个回答

1

family 可以是:

wx.DECORATIVE, wx.DEFAULT,wx.MODERN, wx.ROMAN, wx.SCRIPT or wx.SWISS.

所以你应该使用:

font = wx.Font(sw/10 , wx.DEFAULT, wx.NORMAL, wx.NORMAL)

撰写回答