更新されたコードスニペット: 私は 'self'に更新しました。グローバルではなく、慣習ではあるが、依然として唯一の値を持つことで、クラスレベルで割り当てられた空の文字列が返されますが、これを削除するとエラーがスローされます。あなたはNameError:名前が定義されていません
class A(object):
c = ''
のようにクラスレベルの変数を定義するとき
class MainDialog(QWidget, qcDbWidget4.Ui_qcQueryWidget):
dbDir = ''
DbSelection = ''
dbPath = ''
TabSelection = ''
exportDir = ''
exportFileName = ''
def __init__(self, parent=None):
super(MainDialog, self).__init__(parent)
self.setupUi(self)
self.connect(self.dbDirSelect, SIGNAL("clicked()"), self.getDirFileNames)
self.connect(self.dbSelectButton, SIGNAL('clicked()'), self.selectDb)
self.connect(self.tabSelectButton, SIGNAL('clicked()'), self.selectTab)
self.connect(self.exportDirSelect, SIGNAL("clicked()"), self.getExportDir)
self.connect(self.exportButton, SIGNAL("clicked()"), self.setExportName)
self.connect(self.querySubmitButton, SIGNAL("clicked()"), self.setQueryParams)
self.connect(self.querySubmitButton, SIGNAL("clicked()"), self.dbQuery)
def getDirFileNames(self):
self.dbDir = str(QFileDialog.getExistingDirectory(self))
self.dbDirDisplay.setText(self.dbDir)
dbFileList = []
for root, dirs, files in os.walk(self.dbDir):
for file in files:
if file.endswith('.db'):
dbFileList.append(file)
self.dbSelection.addItems(dbFileList)
エラーを返す行はどれですか?他の答えはあなたが見たことがありますか? – jmoon
'global'は使わないでください。あなたはおそらく 'self.qcLevelCode'を探しています。 – Ryan
それは来ているようです:queryStatement = "SELECT * FROM" + qcTabSelect + "WHERE" + qcLevelSelectを一番下に移動 – RGETLB