报错问题:
C:\Users\iphauser>ride.py
Traceback (most recent call last):
File "d:\soft\python36\lib\site-packages\robotide\application\application.py", line 59, in OnInit
self._plugin_loader.enable_plugins()
File "d:\soft\python36\lib\site-packages\robotide\application\pluginloader.py", line 43, in enable_plugins
p.enable_on_startup()
File "d:\soft\python36\lib\site-packages\robotide\application\pluginconnector.py", line 52, in enable_on_startup
self.enable()
File "d:\soft\python36\lib\site-packages\robotide\application\pluginconnector.py", line 57, in enable
self._plugin.enable()
File "d:\soft\python36\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 162, in enable
self._build_ui()
File "d:\soft\python36\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 558, in _build_ui
self._build_notebook_tab()
File "d:\soft\python36\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 734, in _build_notebook_tab
self.out = self._create_output_textctrl()
File "d:\soft\python36\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 769, in _create_output_textctrl
font = self._create_font()
File "d:\soft\python36\lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py", line 789, in _create_font
font=wx.SystemSettings.GetFont(wx.SYS_ANSI_FIXED_FONT)
wx._core.wxAssertionError: C++ assertion "wxFontEnumerator::IsValidFacename(font.GetFaceName())" failed at ..\..\src\msw\settings.cpp(301) in wxSystemSettingsNative::GetFont():
OnInit returned false, exiting...
Error in atexit._run_exitfuncs:
wx._core.wxAssertionError: C++ assertion "GetEventHandler() == this" failed at ..\..\src\common\wincmn.cpp(478) in wxWindowBase::~wxWindowBase(): any pushed event handlers must have been removed
解决办法:找到python3.6.6\Lib\site-packages\robotide\contrib\testrunner\testrunnerplugin.py文件,修改_create_font函数
修改后的代码为:
def _create_font(self):
#font=wx.SystemSettings.GetFont(wx.SYS_ANSI_FIXED_FONT) #default font has error
font = wx.SystemSettings.GetFont(wx.SYS_SYSTEM_FONT) #set a number in [0-8,10,13],then run ride successfully,SYS_SYSTEM_FONT=13,represents system font
if not font.IsFixedWidth():
# fixed width fonts are typically a little bigger than their
# variable width peers so subtract one from the point size.
font = wx.Font(font.GetPointSize()-1, wx.FONTFAMILY_MODERN,
wx.FONTSTYLE_NORMAL, wx.FONTWEIGHT_NORMAL)
return font
参考:https://blog.csdn.net/u011127242/article/details/88864476