带拖放的wx.PyTextDataObject会产生额外的字符

时间:2011-12-07 22:00:59

标签: python wxpython wxwidgets

我正在使用wx.PyTextDataObject作为wxPython中拖放设置的数据对象。当用户选择要拖动的项目时,文本被复制到wx.PyTextDataObject中,然后将PyTextDataObject复制到另一个(这是wx的内部,我不控制它)。我遇到的问题是,复制的文本偶尔会包含一些垃圾。它看起来像wx中的某种缓冲区溢出问题。

我已将问题缩小到以下示例。示例中的字符串来自我们遇到问题的用例,删掉一个字母,没有问题。

>>> import wx
>>> src = wx.PyTextDataObject(u'HR7984,HR8488,HR8893,HC7984,HC8488,HC8893,PO7984,PO8488,PO8893')
>>> dst = wx.PyTextDataObject()
>>> dst.SetData(src.GetDataHere())
True
>>> dst.GetText()
u'HR7984,HR8488,HR8893,HC7984,HC8488,HC8893,PO7984,PO8488,PO8893\u1f00x'
>>> src.GetText()
u'HR7984,HR8488,HR8893,HC7984,HC8488,HC8893,PO7984,PO8488,PO8893'
>>> 

之前有没有人遇到过这个错误?任何可能出现问题的想法?如果它在wxWidgets中,我想找一个补丁。

我的设置是 OSX,python 2.7,wx 2.8.12.1(mac-unicode)Carbon。

0 个答案:

没有答案