Добрый вечер господа.
Никак не могу сделать окошко . в которую вводишь SQL запрос и он срабатывает.
Сделал окошко и кнопку отправки запроса, а вот в ООП стиле появились проблемы.
Как решить данную ошибку.
# -*- coding: utf-8 -*-
import sys,sqlite3
from PyQt4.QtCore import SIGNAL
from PyQt4.QtGui import QDialog, QApplication, QPushButton, QLineEdit, QFormLayout
class Obrabotka:
def sql(sqltext):
con = sqlite3.connect("students.db")
cur = con.cursor() # Создаем объект-курсор
try:
cur.execute(str(sqltext))
except sqlite3.DatabaseError, err:
print u"Ошибка:", err
else:
print u"Запрос успешно выполнен"
cur.close()
con.close()
class Form(QDialog):
def __init__(self, parent=None):
super(Form, self).__init__(parent)
self.le = QLineEdit()
self.le.setObjectName("host")
self.le.setText("")
self.pb = QPushButton()
self.pb.setObjectName("connect")
self.pb.setText(u"Отправить")
layout = QFormLayout()
layout.addWidget(self.le)
layout.addWidget(self.pb)
self.setLayout(layout)
self.connect(self.pb, SIGNAL("clicked()"),self.button_click)
self.setWindowTitle(u"Запрос")
def button_click(self):
# shost is a QString object
sqltext = self.le.text()
Obrabotka.sql(sqltext)
ERROR
D:\Program\Python27\python.exe D:/workspace/pycharm/Project/Qt/Project3/test.py
Traceback (most recent call last):
File "D:/workspace/pycharm/Project/Qt/Project3/test.py", line 46, in button_click
Obrabotka.sql(sqltext)
TypeError: unbound method sql() must be called with Obrabotka instance as first argument (got QString instance instead)
Process finished with exit code 0