ride.py 啟動報錯


報錯問題:

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

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM