Code: Alles auswählen
from PyQt4.Qt import *
import sys
class DBWidget (QWidget):
def __init__(self, parent=None):
QWidget.__init__(self, parent)
self.view = QTableView(self)
self.idSpin = QSpinBox(self)
self.idSpin.setRange(0, 100000)
self.firstNameEdit = QLineEdit(self)
self.secondNameEdit = QLineEdit(self)
self.submitButton = QPushButton("submit", self)
layout = QHBoxLayout(self)
layout.addWidget(self.view)
editLayout = QVBoxLayout()
layout.addLayout(editLayout)
editLayout.addWidget(self.idSpin)
editLayout.addWidget(self.firstNameEdit)
editLayout.addWidget(self.secondNameEdit)
editLayout.addSpacing(10)
editLayout.addWidget(self.submitButton)
editLayout.addStretch()
db = QSqlDatabase.addDatabase("QSQLITE")
db.setDatabaseName("/home/franz/test/test1.db")
self.model = QSqlTableModel()
self.model.setTable("person")
self.model.select()
self.view.setModel(self.model)
self.mapper = QDataWidgetMapper(self)
self.mapper.setModel(self.model)
self.mapper.addMapping(self.idSpin, 0)
self.mapper.addMapping(self.firstNameEdit, 1)
self.mapper.addMapping(self.secondNameEdit, 2)
self.mapper.toFirst()
self.connect(self.view, SIGNAL('clicked(const QModelIndex&)'), self.mapper.setCurrentModelIndex)
self.connect(self.submitButton, SIGNAL('clicked()'), self.model.submitAll)
app = QApplication(sys.argv)
w = DBWidget()
w.show()
app.exec_()