Python linux中的TextCtrl小部件崩溃

Python linux中的TextCtrl小部件崩溃,python,wxpython,wxwidgets,Python,Wxpython,Wxwidgets,我正在使用下面的代码片段,它在windows操作系统中正常工作,但在linux中,它以分段错误结束 self.textMessage = wx.TextCtrl(self, -1, '', style=wx.TE_MULTILINE|wx.TE_READONLY) self.hSizer2.Add(item=self.textMessage, proportion=1, flag=wx.EXPAND|wx.ALL, border=3) self.vSizer.Add(item=self.hSiz

我正在使用下面的代码片段,它在windows操作系统中正常工作,但在linux中,它以分段错误结束

self.textMessage = wx.TextCtrl(self, -1, '', style=wx.TE_MULTILINE|wx.TE_READONLY)
self.hSizer2.Add(item=self.textMessage, proportion=1, flag=wx.EXPAND|wx.ALL, border=3)
self.vSizer.Add(item=self.hSizer2, proportion=1, flag=wx.EXPAND|wx.ALL, border=0)
self.textMessage.AppendText(message+" \n")
我正在使用redhat enterprise linux。是否可以用其他小部件替换TextCtrl小部件?是否有用于TextCtrl的自定义小部件

如果我遗漏了上面代码中的任何内容,也请告诉我,以避免崩溃问题


提前感谢。

我使用wxPython 2.8.12和Python 2.7.6在Kubuntu 14.04机器上的一个实际可运行示例中测试了您的代码,结果运行得很好。请参见以下示例:

import wx

########################################################################
class MyPanel(wx.Panel):
    """"""

    #----------------------------------------------------------------------
    def __init__(self, parent):
        """Constructor"""
        wx.Panel.__init__(self, parent)

        self.vSizer = wx.BoxSizer(wx.VERTICAL)
        self.hSizer2 = wx.BoxSizer(wx.HORIZONTAL)

        message = "The bright red fox"
        self.textMessage = wx.TextCtrl(self, -1, '', style=wx.TE_MULTILINE|wx.TE_READONLY)
        self.hSizer2.Add(item=self.textMessage, proportion=1, flag=wx.EXPAND|wx.ALL, border=3)
        self.vSizer.Add(item=self.hSizer2, proportion=1, flag=wx.EXPAND|wx.ALL, border=0)
        self.textMessage.AppendText(message+" \n")

        self.SetSizer(self.vSizer)

########################################################################
class MyFrame(wx.Frame):
    """"""

    #----------------------------------------------------------------------
    def __init__(self):
        """Constructor"""
        wx.Frame.__init__(self, None, title="Test")
        panel = MyPanel(self)

        self.Show()

if __name__ == "__main__":
    app = wx.App(False)
    frame = MyFrame()
    app.MainLoop()

当它崩溃时,你会得到什么样的回溯?对于其他小部件,请查看wxPython演示。你能展示一个自包含的示例应用程序,它在运行时会显示问题。谢谢你……它是由于AppendText的分段错误而崩溃的,所以我没有使用AppendText,而是使用了SetValue方法,它解决了崩溃问题它是由于AppendText的分段错误而崩溃的,所以我没有使用AppendText,而是使用了SetValue方法,它解决了崩溃问题我的代码崩溃了还是你的代码崩溃了?您的消息变量实际上是文本吗?