PyQt4アプリにQListWidgetがあります。フォルダパスが含まれています。その内容をQSettingsに保存し、後でロードしたいと思います。私はこれを行うためにこのコードを使用しました:
def foldersSave(self):
folders = {} '''create dict to store data'''
foldersnum = self.configDialog.FolderLIST.count() '''get number of items'''
if foldersnum:
for i in range(foldersnum):
folders[i] = self.configDialog.FolderLIST.item(i).text() '''save items text to dict'''
return str(folders) '''return string of folders to store in QSettings'''
return None
しかし、そうすると、フォルダのパスは次のように構成ファイルに保存されます。
musicfolders={0: PyQt4.QtCore.QString(u'/home/sam/Ubuntu One')}
だから私はそれらをロードする方法がわかりません。私はさまざまなバリエーションでこのようなものを試しました:
def foldersLoad(self):
folders = eval(self.tunSettings.value('musicfolders').toString())
エラーを返します:
TypeError: eval() arg 1 must be a string or code object
別の方法でデータを保存する必要があるようですが、今は保存しています。たくさんグーグルしたが、手がかりがない。答えは些細なことだと思いますが、行き詰まっています。