1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67
|
import os
import sys
from PyQt4 import QtCore,QtGui,QtSql
from ui_client import Ui_MainWindow
CODE,NOM,PRENOM,CIVILITE,NAISSANCE,INSCRIPTION,ADRESSE = range(7)
class fen(QtGui.QMainWindow,Ui_MainWindow):
FIRST, PREV, NEXT, LAST = range(4)
def __init__(self,parent=None):
super(fen, self).__init__(parent)
self.setupUi(self)
self.model=QtSql.QSqlRelationalTableModel(self)
self.model.setTable("clients")
self.model.select()
self.modelc=QtSql.QSqlRelationalTableModel(self)
self.modelc.setTable("clients")
self.modelc.select()
self.mapper = QtGui.QDataWidgetMapper(self)
self.mapper.setSubmitPolicy(QtGui.QDataWidgetMapper.AutoSubmit)
self.mapper.setModel(self.model)
self.comboCode.setModel(self.model)
self.comboCode.setModelColumn(CODE)
self.comboNom.setModel(self.modelc)
self.comboNom.setModelColumn(NOM)
self.mapper.setItemDelegate(QtSql.QSqlRelationalDelegate(self))
self.mapper.addMapping(self.comboCode, CODE)
self.mapper.addMapping(self.comboNom, NOM)
self.mapper.addMapping(self.linePrenom, PRENOM)
self.mapper.addMapping(self.dateNaissance, NAISSANCE)
self.mapper.addMapping(self.textAdresse, ADRESSE)
self.mapper.toFirst()
self.connect(self.pushButton_prem, QtCore.SIGNAL("clicked()"),self.mapper, QtCore.SLOT("toFirst()"))
self.connect(self.pushButton_prec, QtCore.SIGNAL("clicked()"),self.mapper, QtCore.SLOT("toPrevious()"))
self.connect(self.pushButton_suiv, QtCore.SIGNAL("clicked()"),self.mapper, QtCore.SLOT("toNext()"))
self.connect(self.pushButton_dern, QtCore.SIGNAL("clicked()"),self.mapper, QtCore.SLOT("toLast()"))
self.connect(self.comboCode, QtCore.SIGNAL("currentIndexChanged(int)"),
lambda: self.changeComboCode())
self.connect(self.comboNom, QtCore.SIGNAL("currentIndexChanged(int)"),
lambda: self.changeComboNom())
def changeComboCode(self):
self.mapper.setCurrentIndex(self.comboCode.currentIndex())
def changeComboNom(self):
self.mapper.setCurrentIndex(self.comboNom.currentIndex())
if __name__=="__main__":
app=QtGui.QApplication(sys.argv)
filename = os.path.join(os.path.dirname(__file__),
"c:/tmp/example")
db = QtSql.QSqlDatabase.addDatabase("QSQLITE")
db.setDatabaseName(filename)
ui=fen()
ui.show()
sys.exit(app.exec_()) |
Partager