【发布时间】:2014-05-03 18:11:07
【问题描述】:
我有一个非常复杂的问题。我搜索了整个互联网并尝试了一切,但没有任何效果。我想从列表框中获取字符串,然后从列表框中删除带有单词的文件中的行。可以请人帮助我吗?下面是代码:
def OnDelete(self, event):
sel = self.listbox.GetSelection()
如果 sel != -1:
self.listbox.Delete(sel)
subor = open("保存/savegame.txt", "r")
行 = subor.readlines()
subor.close()
subor = open("保存/savegame.txt", "w")
selstring = self.listbox.GetString(self.listbox.GetSelection())
换行:
if line!=selstring:
subor.write(line)
subor.close()
这是保存文件的代码:
def OnNewGame(self,event):
nameofplr = wx.GetTextFromUser('输入你的名字:', '新游戏')
subor=open("保存/savegame.txt","a")
subor.write("\n" + nameofplr)
subor.close()
savegame=open("Save/" + nameofplr + ".prjct", "w+")
savegame.close()
它显示了这个错误:
Traceback(最近一次调用最后一次): OnDelete 中的文件“D:\Python\Python Projects\Project\Project.py”,第 106 行 selstring = self.listbox.GetString(self.listbox.GetSelection()) GetString 中的文件“D:\Python\lib\site-packages\wx-3.0-msw\wx_core.py”,第 12962 行 返回 core.ItemContainer_GetString(*args, **kwargs) wx._core.PyAssertionError:C++ 断言“IsValid(n)”在 wxListBox::GetString() 中的 ....\src\msw\listbox.cpp(387) 失败:wxListBox::GetString 中的索引无效
非常感谢您的帮助!
【问题讨论】: