我尝试制作save as
按钮但是当我尝试在我的目录中保存文件时出现此错误消息(我想以文本格式(.txt或.doc)保存我的文件)
File "C:\Users\Mr.Pakde/.qgis2/python/plugins\condition\conditiondialog.py", line 80, in saveAs
self._save( _filename )
File "C:\Users\Mr.Pakde/.qgis2/python/plugins\condition\conditiondialog.py", line 68, in _save
f.write( 'Rekomendasi :' + str(self.ui.textRec1.setPlainText() ) )
TypeError: QTextEdit.setPlainText(QString): not enough arguments
这是代码:
Recomen = self.ui.btnRec1
QtCore.QObject.connect(Recomen, QtCore.SIGNAL('clicked()'),self.Compare1)
Smpan = self.ui.btnSave
QtCore.QObject.connect(Smpan, QtCore.SIGNAL('clicked()'),self.saveAs)
def Compare1(self):
input1 = self.ui.lineInput1.text()
input2 = self.ui.lineInput2.text()
compare = ''
if input1 == input2:
compare = 'Data dapat digunakam'
else:
compare = 'Data tidak cocok'
self.ui.textRec1.setPlainText(compare)
def _save(self, simpan):
f = open( simpan, 'w' )
f.write( 'Input 1 :' + str(self.ui.lineInput1.text()) )
f.write( 'Input 2 :' + str(self.ui.lineInput2.text()) )
f.write( 'Rekomendasi :' + str(self.ui.textRec1.setPlainText()) )
f.close()
def savefile(self):
if self.simpan:
self._save( "%s" % self.simpan )
else:
self.saveAs()
def saveAs(self):
tulis = QtGui.QFileDialog(self).getSaveFileName()
if tulis !="":
_filename = "%s" % tulis
self._save( _filename )
答案 0 :(得分:1)
您需要使用toPlainText方法从文本编辑中获取文本:
f.write('Rekomendasi :' + str(self.ui.textRec1.toPlainText()))
答案 1 :(得分:0)
看起来您缺少代码,因为错误消息引用了第80行。但错误 消息也指
f.write( 'Rekomendasi :' + str(self.ui.textRec1.setPlainText()) ).
根据文档.setPlainText需要一个QString来输入。 http://qt-project.org/doc/qt-4.8/qtextedit.html#plainText-prop