安装mobile insight遇到的问题,在最后执行mi-gui遇到了报错:
wx._core.wxAssertionError: C++ assertion "CheckExpectedParentls(w,
m_containingWindow)" failed at
/home/wxpy/wxPython-4.2.1/ext/wxWidgets/src/common/sizer.cpp(887) in SetContainingWindow(): Windows managed by the sizer associated with the given window must have this window as parent, otherwise they will not be repositioned correctly.
Please use the window wxPanel@0x1e32c00 ("panel") with which this sizer is associated, as the parent when creating the window wxPanel@0x1dc1070 ("panel") managed by it.
引用 皆我百晓生 小程序回复内容作答:
安装Mobile Insight过程中遇到的报错是由于wxPython库中的一个断言错误引起的。错误信息提示说Windows(即控件)要由父窗口管理,否则它们将不能正确重新定位。解决问题的方法是使用正确的父窗口来创建窗口,并确保它们由相应的sizer管理。
根据报错信息,您可以检查您的代码或配置文件,确认您创建的窗口(wxPanel)是否有正确的父窗口,以及是否与相应的sizer关联。可能需要修改代码或配置文件以解决这个问题。
如果您是在使用Mobile Insight的GUI界面时遇到此问题,首先确保您的wxPython库的版本与Mobile Insight的要求相匹配。如果版本匹配并且问题仍然存在,您可以尝试重新安装或升级wxPython库,并确保使用正确的版本。
如果问题仍然存在,建议您查阅Mobile Insight的官方文档或与其开发团队联系,寻求专业的技术支持和解决方案。他们将能够为您提供更具体的帮助和指导,以解决此问题。
引用GPT,希望可以帮你解决问题:
根据错误提示,wxAssertionError是由于在设置窗口的父窗口时出现问题。
具体地说,错误发生在sizer.cpp的第887行,提示我们在创建窗口时,需要使用与该sizer关联的wxPanel作为父窗口。
解决这个问题的方法是,在创建窗口时,将与该sizer关联的wxPanel作为父窗口传递进去。
例如,如果你要创建一个名为”myWindow”的窗口,并将其添加到名为”mySizer”的sizer中,你需要这样做:
myWindow = wx.Window(panel) # 将panel作为父窗口
mySizer.Add(myWindow, proportion=1, flag=wx.EXPAND)
这样,你就可以避免这个错误,并确保窗口的位置调整正确。请根据你的具体代码和需求进行相应的调整。