간단한 라인 입력과 누름 버튼이있는 Qt Designer를 사용하여 UI를 만들었습니다. 내가 파이썬 변수에서 편집 라인의 입력을 받고 있지만 오류가 날 던지고있다. 내가 파이썬 프로그램을 실행하면AttributeError : 'bool'객체에 'le'속성이 없습니다 - pyqt - 파이썬 변수에 텍스트 가져 오기
self.le = QtGui.QLineEdit(self.centralwidget)
self.le.setObjectName(_fromUtf8("le"))
, 나는이 오류가 :
Traceback (most recent call last):
File "main.py", line 20, in functioni
cur.execute("INSERT INTO Name (Name) VALUES (?)", self.le.displayText())
AttributeError: 'bool' object has no attribute 'le'
이 질문이있을 수 있습니다
from PyQt4 import QtGui
import sys
import prog
import MySQLdb
class ExampleApp(QtGui.QMainWindow, prog.Ui_Program):
def __init__(self, parent=None):
super(ExampleApp, self).__init__(parent)
self.setupUi(self)
self.pushButton.clicked.connect(functioni)
def functioni (self):
db = MySQLdb.connect(host="localhost",
user="root",
passwd="*****",
db="testpy")
cur = db.cursor()
cur.execute("INSERT INTO Name (Name) VALUES (?)", self.le.text()) #self.le.text() is giving me trouble...
db.commit()
cur.close()
db.close()
def main():
app = QtGui.QApplication(sys.argv)
form = ExampleApp()
form.show()
app.exec_()
if __name__ == '__main__':
main()
내 UI 코드이 있습니다 이 내 파이썬 코드 이전에 물어 보았지만 모든 것을 시도했지만 효과가 없습니다! 나는 여기에 bool이 무엇인지 알 수 없다. 솔루션은 사소한 일이지만 누군가 내 실수를 지적 할 수 있으면 감사히 생각합니다. 고맙습니다. 함수 자체가 클래스 들여 쓰기 (따라서,이 클래스의 방법이어야한다)에있을 또는를 받아야으로,
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'prog.ui'
#
# Created by: PyQt4 UI code generator 4.11.4
#
# WARNING! All changes made in this file will be lost!
from PyQt4 import QtCore, QtGui
try:
_fromUtf8 = QtCore.QString.fromUtf8
except AttributeError:
def _fromUtf8(s):
return s
try:
_encoding = QtGui.QApplication.UnicodeUTF8
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig, _encoding)
except AttributeError:
def _translate(context, text, disambig):
return QtGui.QApplication.translate(context, text, disambig)
class Ui_Program(object):
def setupUi(self, Program):
Program.setObjectName(_fromUtf8("Program"))
Program.resize(351, 138)
Program.setLayoutDirection(QtCore.Qt.LeftToRight)
self.centralwidget = QtGui.QWidget(Program)
self.centralwidget.setObjectName(_fromUtf8("centralwidget"))
self.formLayout = QtGui.QFormLayout(self.centralwidget)
self.formLayout.setObjectName(_fromUtf8("formLayout"))
self.label = QtGui.QLabel(self.centralwidget)
self.label.setObjectName(_fromUtf8("label"))
self.formLayout.setWidget(0, QtGui.QFormLayout.LabelRole, self.label)
self.le = QtGui.QLineEdit(self.centralwidget)
self.le.setObjectName(_fromUtf8("le"))
self.formLayout.setWidget(0, QtGui.QFormLayout.FieldRole, self.le)
self.pushButton = QtGui.QPushButton(self.centralwidget)
self.pushButton.setObjectName(_fromUtf8("pushButton"))
self.formLayout.setWidget(1, QtGui.QFormLayout.FieldRole, self.pushButton)
Program.setCentralWidget(self.centralwidget)
self.menubar = QtGui.QMenuBar(Program)
self.menubar.setGeometry(QtCore.QRect(0, 0, 351, 25))
self.menubar.setObjectName(_fromUtf8("menubar"))
self.menuSubmit = QtGui.QMenu(self.menubar)
self.menuSubmit.setObjectName(_fromUtf8("menuSubmit"))
Program.setMenuBar(self.menubar)
self.statusbar = QtGui.QStatusBar(Program)
self.statusbar.setObjectName(_fromUtf8("statusbar"))
Program.setStatusBar(self.statusbar)
self.toolBar = QtGui.QToolBar(Program)
self.toolBar.setObjectName(_fromUtf8("toolBar"))
Program.addToolBar(QtCore.Qt.TopToolBarArea, self.toolBar)
self.actionSubmit = QtGui.QAction(Program)
self.actionSubmit.setObjectName(_fromUtf8("actionSubmit"))
self.menuSubmit.addAction(self.actionSubmit)
self.menubar.addAction(self.menuSubmit.menuAction())
self.retranslateUi(Program)
QtCore.QMetaObject.connectSlotsByName(Program)
def retranslateUi(self, Program):
Program.setWindowTitle(_translate("Program", "Program", None))
self.label.setText(_translate("Program", "Name", None))
self.pushButton.setText(_translate("Program", "Submit", None))
self.menuSubmit.setTitle(_translate("Program", "Submit", None))
self.toolBar.setWindowTitle(_translate("Program", "toolBar", None))
self.actionSubmit.setText(_translate("Program", "Submit", None))
당신은 내가 클래스 멤버 함수 나 전역 함수 당신이 functioni 원하는 무엇을 물어 trying.Can있다 : 당신은 하나 개의 매개 변수가있는 경우, 단일 값 터플은 괄호를 닫기 전에 쉼표를 추가하여 얻을 수 있습니다? 당신이 인자로 함수에 자기를 넘겨주고 함수가 클래스 외부에있다. –