def __init__(self, parent=None): super(dlggroupmgr_imp, self).__init__(parent) # db = QtSql.QSqlDatabase.addDatabase('QSQLITE', 'memory') # db.setDatabaseName(':memory:') self.model_friend = QtSql.QSqlTableModel() self.model_unknown = QtSql.QSqlTableModel() self.cnt_friend = 0 self.cnt_unknown = 0 self.groupname = "" self.wxInst = None self.wxHelper = None
def model_setup(self) -> None: self.logger.info("Initializing Models") data_model = QtSql.QSqlTableModel(self) data_model.setTable("teams") data_model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) data_model.select() self.data_model = data_model rank_model = QtSql.QSqlTableModel(self) rank_model.setTable("ranks") rank_model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit) rank_model.select() self.rank_model = rank_model
def __init__(self, parent=None): super(CrudDialog, self).__init__(parent) db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('films.db') self.view = QtWidgets.QTableView() self.view.setToolTip("Change the fields") self.view.setWindowTitle("Table Model") btn_add = QtWidgets.QPushButton("Add a row") btn_add.clicked.connect(self.add_row) btn_del = QtWidgets.QPushButton("Delete a row") btn_del.clicked.connect(self.remove_row) lay = QtWidgets.QVBoxLayout(self) lay.addWidget(self.view) lay.addWidget(btn_add) lay.addWidget(btn_del) self.model = QtSql.QSqlTableModel() self.model.setTable('genres') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "ИД") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Жанр") self.view.setModel(self.model) self.resize(1100, 600)
def _biaocaozuo(self): self.model = QtSql.QSqlTableModel() self.model.setTable('BookData') self.model.setEditStrategy(QSqlTableModel.OnManualSubmit) # 设置保存策略 self.table_view.setModel(self.model) self.model.select() self.model.setHeaderData(0, Qt.Horizontal, 'ISBN') self.model.setHeaderData(1, Qt.Horizontal, '书名') self.model.setHeaderData(2, Qt.Horizontal, '作者') self.model.setHeaderData(3, Qt.Horizontal, '出版社') self.model.setHeaderData(4, Qt.Horizontal, '出版日期') self.model.setHeaderData(5, Qt.Horizontal, '评分') self.model.setHeaderData(6, Qt.Horizontal, '照片') self.table_view.setColumnHidden(6, True) self.mapper = QDataWidgetMapper() self.mapper.setModel(self.model) self.mapper.setSubmitPolicy(QDataWidgetMapper.AutoSubmit) self.mapper.addMapping(self.lineEdit_ISBN, 0) self.mapper.addMapping(self.lineEdit_shuming, 1) self.mapper.addMapping(self.lineEdit_zuozhe, 2) self.mapper.addMapping(self.lineEdit_chubanshe, 3) self.mapper.addMapping(self.lineEdit_chubanriqi, 4) self.mapper.addMapping(self.lineEdit_pingfen, 5) self.mapper.toFirst() self.selModel = QItemSelectionModel(self.model) # 选择模型 self.table_view.setSelectionModel(self.selModel) self.selModel.currentChanged.connect( self.do_currentChanged) # 当前项变化时触发 self.selModel.currentRowChanged.connect( self.do_currentRowChanged) # 选择行变化时
def __init__(self, parent=None): QtWidgets.QWidget.__init__(self, parent) self.ui = Ui_MainWindow() self.ui.setupUi(self) self.form = Ui_Form() # открываю бд self.db = QtSql.QSqlDatabase.addDatabase("QPSQL") self.db.setDatabaseName('postgres') self.db.setUserName('postgres') self.db.setPassword('12345') self.db.setHostName('localhost') self.db.open() # запуск таймера self.timer = QtCore.QTimer() self.timer.timeout.connect(self.timer_tick) self.model = QtSql.QSqlTableModel(db=self.db) # обработка сигналов self.ui.open_table.clicked.connect(self.open_table) self.ui.start_scraping.clicked.connect(self.start_parse) self.ui.stop_scraping.clicked.connect(self.stop_parse) # настойки элементов self.ui.stop_scraping.setVisible(False)
def __init__(self, parent=None): super(CrudDialog, self).__init__(parent) db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('cofee.db') self.view = QtWidgets.QTableView() self.view.setToolTip("Change the fields") self.view.setWindowTitle("Table Model") btn_add = QtWidgets.QPushButton("Добавить") btn_add.clicked.connect(self.add_row) btn_del = QtWidgets.QPushButton("Удалить") btn_del.clicked.connect(self.remove_row) lay = QtWidgets.QVBoxLayout(self) lay.addWidget(self.view) lay.addWidget(btn_add) lay.addWidget(btn_del) self.model = QtSql.QSqlTableModel() self.model.setTable('cofies') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "ИД") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Сорт") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Степень обжарки") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Молотый/В зернах") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Описание вкуса") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "Цена") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Обьем упаковки") self.view.setModel(self.model) self.resize(1100, 600)
class MainWindow(QWindow,add_student.Ui_MainWindow): def initializeModel(self,model): self.model=model self.model.setTable('stud_info') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "s_id") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "name") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "contact") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "email") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "city") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "b_no") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "r_no") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "date_of_join") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "fees_status") def createView(title, model): view = QtGui.QTableView() view.setModel( self.model) view.setWindowTitle(title) return view def addrow(): print( self.model.rowCount()) ret = self.model.insertRows( self.model.rowCount(), 1) print(ret) def findrow(i): delrow=i.row() if __name__ == '__main__': app = QtGui.QApplication(sys.argv) db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('hostel_info.db') self.model = QtSql.QSqlTableModel() delrow=-1 initializeModel( self.model) view1 = createView("Table Model (View 1)", self.model) view1.clicked.connect(findrow) dlg = QtGui.QDialog() layout = QtGui.QVBoxLayout() layout.addWidget(view1) button = QtGui.QPushButton("Add a row") button.clicked.connect(addrow) layout.addWidget(button) btn1 = QtGui.QPushButton("del a row") btn1.clicked.connect(lambda:self.model.removeRow(view1.currentIndex().row())) layout.addWidget(btn1) dlg.setLayout(layout) dlg.setWindowTitle("Database Demo") dlg.show() sys.exit(app.exec_())
def databaseDB(self): db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('instagram-personal.db') self.model = QtSql.QSqlTableModel() self.model.setTable("instagramInformation") self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, Qt.Horizontal, '_ID') self.model.setHeaderData(1, Qt.Horizontal, '_NAME') self.model.setHeaderData(2, Qt.Horizontal, '_PASSWORD') view = QTableView() view.setModel(self.model) delrow = -1 view.clicked.connect(self.satirAl) v_box = QVBoxLayout() btn2 = QPushButton('satirSil') btn2.clicked.connect( lambda: self.model.removeRow(view.currentIndex().row())) v_box.addWidget(view) v_box.addWidget(btn2) widget = QWidget() widget.setLayout(v_box) self.setCentralWidget(widget)
def getJwInfo(self): model = QtSql.QSqlTableModel() self.initModel(model) view = self.Jwtable self.initLabel() self.tip.setText("查询成功!") view.setModel(model)
def show_employee_view(self): self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('database_hrm.db') self.model = QtSql.QSqlTableModel() self.model.setTable('view_employee') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "National_ID") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Registration_Date") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Registration_Number") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Employee_hrm_code") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "KRA_PIN") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "First_Name") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Middle_Name") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "Last_Name") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "Gender") self.model.setHeaderData(9, QtCore.Qt.Horizontal, "Phone") self.model.setHeaderData(10, QtCore.Qt.Horizontal, "Email") self.model.setHeaderData(11, QtCore.Qt.Horizontal, "Address") self.model.setHeaderData(12, QtCore.Qt.Horizontal, "Experience_level") self.model.setHeaderData(13, QtCore.Qt.Horizontal, "Skills") self.model.setHeaderData(14, QtCore.Qt.Horizontal, "Availability") self.model.setHeaderData(15, QtCore.Qt.Horizontal, "Payment_Mode") self.employee.tableWidget_records.setModel(self.model) self.i = self.model.rowCount() self.employee.lcdNumber_user_id.display(self.i) self.show()
def show_client_view(self): self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('database_hrm.db') self.model = QtSql.QSqlTableModel() self.model.setTable('view_clients') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.setHeaderData(0, QtCore.Qt.Horizontal, "National ID") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Registration Date") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Registration No") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Invoice No") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Company Name") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "KRA PIN") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "First Name") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "Middle Name") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "Last Name") self.model.setHeaderData(9, QtCore.Qt.Horizontal, "Phone") self.model.setHeaderData(10, QtCore.Qt.Horizontal, "Email") self.model.setHeaderData(11, QtCore.Qt.Horizontal, "Workforce") self.model.setHeaderData(12, QtCore.Qt.Horizontal, "Skills") self.model.setHeaderData(13, QtCore.Qt.Horizontal, "Pay Rate") self.model.select() self.clients.tableWidget_records.setModel(self.model) # print(self.clients.tableWidget_records.currentIndex().row()) self.i = self.model.rowCount() self.clients.lcdNumber_user_id.display(self.i) # print(self.i) self.show()
def __init__(self): super().__init__() self.ui = Ui_MainWindow() self.ui.setupUi(self) self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('orders.db') self.db.open() self.setupDatabase() self.model = QtSql.QSqlTableModel() self.model.setTable('orders') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "id") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Название") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "ЕИ") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Кол-во") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Цена") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "Сумма") self.ui.tableWidget.setModel(self.model) self.ui.pushButton.clicked.connect(self.addToDb) self.show() self.ui.pushButton_2.clicked.connect(self.updaterow) self.ui.pushButton_3.clicked.connect(self.delrow) self.i = self.model.rowCount() self.ui.lcdNumber.display(self.i) print(self.ui.tableWidget.currentIndex().row())
def sql_table_view_model(self): try: db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('EMPLEADO.db') tableview = self.tableView self.model = QtSql.QSqlTableModel() tableview.setModel(self.model) self.model.setTable('EMPLEADO') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "id_Empleado") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Apellido") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Nombre") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Telefono") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Dirección") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "Fecha_Nacimiento") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Observaciones") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "Sueldo") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "id_Departamento") except Exception as e: print(e)
def __init__(self): super().__init__() self.ui = Ui_MainWindow() self.ui.setupUi(self) self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('task') self.model = QtSql.QSqlTableModel() self.model.setTable('hierarhy') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "id") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "id_parent") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "name") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "image") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "state") self.ui.tableWidget.setModel(self.model) self.ui.tableWidget.hideColumn(0) self.ui.tableWidget.hideColumn(1) self.ui.tableWidget.hideColumn(4) self.ui.tableWidget.setColumnWidth(2, 300) self.ui.tableWidget.setColumnWidth(3, 333) self.ui.pushButton.clicked.connect(self.addToDb) self.show() self.ui.pushButton_2.clicked.connect(self.delrow) self.i = self.model.rowCount()
def __init__(self): super().__init__() self.ui = Ui_MainWindow() self.ui.setupUi(self) self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('vanreda.db') self.model = QtSql.QSqlTableModel() self.model.setTable('radnici') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "Radnik_ID") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "Ime") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Prezime") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "OIB") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Adresa") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "Grad") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Mobitel") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "Datum Zaposlenja") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "Sifra") self.ui.tableView.setModel(self.model) self.ui.tableView.setColumnHidden(8, True) self.ui.pushButton.clicked.connect(self.addToDb) self.ui.pushButton_4.clicked.connect(self.reset) self.show() self.ui.pushButton_2.clicked.connect(self.updaterow) self.ui.pushButton_3.clicked.connect(self.delrow) self.i = self.model.rowCount() self.ui.lcdNumber.display(self.i) print(self.ui.tableView.currentIndex().row())
def setupUi(self, Form): Form.setObjectName("Form") Form.resize(788, 708) sportsconnection.createDB() # Any model will use this later self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('sports.db') model = QtSql.QSqlTableModel() initializeModel(model) view1 = createView("Table Model (View 1)", model) view1.clicked.connect(findrow) # Header size, fill parent, stretch for column in range(model.columnCount()): view1.horizontalHeader().setSectionResizeMode(column, QHeaderView.Stretch) layout = QtWidgets.QGridLayout(Form) layout.addWidget(view1) self.addRowButton = QtWidgets.QPushButton("Add a row") self.addRowButton.clicked.connect(lambda: addrow(model)) layout.addWidget(self.addRowButton) self.deleteButton = QtWidgets.QPushButton("del a row") self.deleteButton.clicked.connect(lambda: deleteRow(model, view1.currentIndex().row())) layout.addWidget(self.deleteButton) self.retranslateUi(Form) QtCore.QMetaObject.connectSlotsByName(Form)
def sql_tableview_model(self): db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('Suppliers.db') tableview = self.ui.tableView self.model = QtSql.QSqlTableModel() tableview.setModel(self.model) self.model.setTable('Supplier') self.model.setEditStrategy( QtSql.QSqlTableModel.OnFieldChange ) # All changes to the model will be applied immediately to the database self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "Supplier_ID") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "CompanyName") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "ContactName") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "ContactTittle") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "Address") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "City") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Region") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "PostalCode") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "Country") self.model.setHeaderData(9, QtCore.Qt.Horizontal, "Phone") self.model.setHeaderData(10, QtCore.Qt.Horizontal, "Fax") self.model.setHeaderData(11, QtCore.Qt.Horizontal, "HomePage")
def __init__(self): super().__init__() self.setupUi(self) # self.modelcsv = QStandardItemModel() self.db = QtSql.QSqlDatabase.addDatabase("QSQLITE") self.db.setDatabaseName('test.db') self.db.open() self.model = QtSql.QSqlTableModel() self.initalizeModel() self.tableView = QTableView() self.tableView.setModel(self.model) self.layout = QVBoxLayout() addButton = QPushButtonq("add") deleteButton = QPushButton("delete") hLayout = QHBoxLayout() # Connect button's function self.btn_1.clicked.connect(self.button1Function) self.btn_2.clicked.connect(self.button2Function) self.pushbutton.clicked.connect(self.pushbuttonClicked) self.dialog = Second() # qTableWidgetItem self.setTableWidgetData()
def __init__(self): super().__init__() self.zandronum_path_string = QtWidgets.QLineEdit() if (name == 'posix'): self.zandronum_path_string.setText( Popen(['which zandronum'], stdout=PIPE, shell=True).communicate()[0].decode()) # self.cbx_select_iwad = QtWidgets.QComboBox(self) self.cbx_pk3s_menu = QtWidgets.QMenu(self) # self.chbx_networking_game = QtWidgets.QCheckBox() self.edit_server = QtWidgets.QLineEdit('ice2heart.com') self.edit_server_port = QtWidgets.QLineEdit('10666') # self.info = QtWidgets.QTextEdit() # Список pk3-файлов self.pk3s = [] # self.db = self.dbInit() self.serverModel = QtSql.QSqlTableModel(self, self.db) # self.initUI() self.cbx_populate() # self.saveOptionsload() self.makeInfo()
def get_reader_info(self): self.db = connect(host='localhost', port=3306, charset='utf8', database='MySQL', password='******', user='******') # 创建游标对象 self.cursor = self.db.cursor() self.model_1 = QtSql.QSqlTableModel() self.readerInfo.setModel(self.model_1) sql = "use bookshopmanagement" self.cursor.execute(sql) sql = "select * from reader" self.cursor.execute(sql) data = self.cursor.fetchall() row = len(data) col = len(data[0]) print(data) model = QtGui.QStandardItemModel(row, col) for i in range(row): for j in range(col): if j is not 0 and j is not 3: model.setItem(i, j, QtGui.QStandardItem(data[i][j])) else: model.setItem(i, j, QtGui.QStandardItem(str(data[i][j]))) model.setHorizontalHeaderLabels(['借阅证ID', "姓名", "性别", "年龄", "电话"]) self.readerInfo.setModel(model) self.statusbar.showMessage("查询成功!总共查询到" + str(row) + "条借阅人信息", 2000)
def initUI(self): self.name = QLabel('Название', self) self.nameEdit = QLineEdit(self) self.name.move(700, 10) self.nameEdit.setGeometry(700, 30, 250, 25) self.price = QLabel('Цена', self) self.priceEdit = QLineEdit(self) self.price.move(700, 70) self.priceEdit.setGeometry(700, 90, 250, 25) self.link = QLabel('Ссылка на страницу', self) self.linkEdit = QLineEdit(self) self.link.move(700, 130) self.linkEdit.setGeometry(700, 150, 250, 25) self.notation = QLabel('Примечание', self) self.notationEdit = QLineEdit(self) self.notation.move(700, 190) self.notationEdit.setGeometry(700, 210, 250, 25) self.btn_add = QPushButton('Создать', self) self.btn_add.move(700, 250) self.btn_update = QPushButton('Обновить', self) self.btn_update.move(785, 250) self.btn_delete = QPushButton('Удалить', self) self.btn_delete.move(870, 250) self.table = QTableView(self) # Данные для подключения к БД self.db = QtSql.QSqlDatabase.addDatabase('QMYSQL') self.db.setHostName('localhost') self.db.setDatabaseName('DBvishlist') self.db.setUserName('user') self.db.setPassword('pass') self.model = QtSql.QSqlTableModel() self.model.setTable('vishlist') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.table.setModel(self.model) self.table.resize(685, 530) self.table.setColumnWidth(0, 33) self.table.setColumnWidth(1, 150) self.table.setColumnWidth(2, 100) self.table.setColumnWidth(3, 180) self.table.setColumnWidth(4, 180) self.setFixedSize(960, 550) self.setGeometry(300, 300, 960, 600) self.show() self.btn_add.clicked.connect(self.addToDb) self.btn_update.clicked.connect(self.updaterow) self.btn_delete.clicked.connect(self.delrow) self.i = self.model.rowCount()
def __init__(self): self._view = QtWidgets.QWidget() self._ui = Ui_DataManager() self._ui.setupUi(self._view) self._ui.refresh_button.setIcon(self._view.style().standardIcon(QStyle.SP_BrowserReload)) self._ui.remove_button.setIcon(self._view.style().standardIcon(QStyle.SP_DialogNoButton)) self._ui.add_button.setIcon(self._view.style().standardIcon(QStyle.SP_DialogYesButton)) self.dlg = DataManagerFilterDialog() db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName(sunpy.config.get("database", "url").replace("sqlite:///", "")) model = QtSql.QSqlTableModel() model.setTable("data") model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) model.select() self._ui.data_table.setModel(model) self.initTableHeader(model) self._ui.add_button.clicked.connect(lambda x: self.onAdd()) self._ui.remove_button.clicked.connect(lambda x: self.onRemove()) self._ui.open_button.clicked.connect(lambda x: self.onOpen()) self._ui.refresh_button.clicked.connect(lambda x: self.model.select()) self._ui.filter_button.clicked.connect(lambda x: self.onFilter()) self.sunpy_db = Database() self.model = model
def del_image(self): # по умолчанию в MessageBox ставим Cancel buttonReply = QMessageBox.question( self, 'Подтвердите действие', "картинка будет удалена", QMessageBox.Yes | QMessageBox.Cancel, QMessageBox.Cancel) # если пользователь согласен if buttonReply == QMessageBox.Yes: db = QtSql.QSqlDatabase.addDatabase("QSQLITE") db.setDatabaseName("image.db") db.open() # модель для запроса к базе model = QtSql.QSqlQueryModel(parent=None) # модель для получения ID записи которую нужно удалить model_table = QtSql.QSqlTableModel() model_table.setTable("images") model_table.select() # берем первый индекс из списка выбранных строк. # по нему строку с этим индексом в моделе и значение в этой строке value(0) в первом столбце - ID id = model_table.record( self.im_table.selectedIndexes()[0].row()).value(0) # удаляем sql_text = f"DELETE FROM images WHERE id = {id}" model.setQuery(sql_text) model.query().exec_() self.refresh_table() db.close()
def __init__(self): super(UiAdminZakat, self).__init__() uic.loadUi('dasaradminzakat.ui', self) self.model = QSqlTableModel() self.show() self.model = QtSql.QSqlTableModel() self.pushButton.clicked.connect(self.showkas) self.Zakat3_2.clicked.connect(self.infozakat) self.pushButton_2.clicked.connect(self.add) self.pushButton_3.clicked.connect(self.remove) self.pushButton_5.clicked.connect(self.backtomenu) self.displaytable() datamasuk = c.execute("SELECT SUM(jumlah) FROM catatan_kas ") for x in datamasuk: hasil1 = x[0] self.lineEdit_2.setText(str(hasil1)) datakeluar = c.execute("SELECT SUM(jumlah) FROM catatan_kaskeluar ") for y in datakeluar: hasil2 = y[0] self.lineEdit_3.setText(str(hasil2)) if hasil2 == None: self.lineEdit_4.setText(str(hasil2)) if hasil1 == None: self.lineEdit_4.setText("-" + str(hasil2)) else: hasil3 = hasil1 - hasil2 self.lineEdit_4.setText(str(hasil3)) datazakat = c.execute("SELECT SUM(jumlah) FROM catatan_zakat ") for a in datazakat: hasil4 = a[0] self.Zakat2_2.setText(str(hasil4))
def sql_table_view_model(self): try: db = QtSql.QSqlDatabase.addDatabase('QSQLITE') db.setDatabaseName('Miempleado.db') tableview = self.tableView self.model = QtSql.QSqlTableModel() tableview.setModel(self.model) self.model.setTable('empleado') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "id_empleado") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "apellido") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "nombre") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "telefono") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "direccion") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "fecha_nacimiento") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "observaciones") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "sueldo") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "id_departamento") except Exception as e: print(e)
def run(self): self.query = QtSql.QSqlQuery() self.model = QtSql.QSqlTableModel() self.model.setTable('tbl_data_get_html') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.table.emit(self.model)
def view_data(self): # 实例化一个可编辑数据模型 db = QtSql.QSqlDatabase.addDatabase('QSQLITE') # db_text,db_action = QtWidgets.QInputDialog.getText(self,'查询数据库名称','请输入课程名称',QtWidgets.QLineEdit.Normal) # db_tablename,db_action = QtWidgets.QInputDialog.getText(self,'查询数据表名称','请输入课时信息',QtWidgets.QLineEdit.Normal) db_text = self.ui.label_cla.text() db_tablename = self.ui.label_cla_time.text() db.setDatabaseName('{}.db'.format(db_text)) # self.db = QtSql.QSqlDatabase.database('{}.db'.format(self.db_text)) db.open() # db_text,db_action = QtWidgets.QInputDialog.getText(self,'打开数据表','请输入数据表名23称',QtWidgets.QLineEdit.Normal) self.model = QtSql.QSqlTableModel() self.model.setTable('{}'.format(db_tablename)) # 设置数据模型的数据表 self.model.setEditStrategy( QtSql.QSqlTableModel.OnFieldChange) # 允许字段更改 # self.model.select() # 查询所有数据 # 设置表格头 self.model.setHeaderData(0, QtCore.Qt.Horizontal, '学号') self.model.setHeaderData(1, QtCore.Qt.Horizontal, '姓名') self.model.setHeaderData(2, QtCore.Qt.Horizontal, '班级') self.model.setHeaderData(3, QtCore.Qt.Horizontal, '时间') self.model.setHeaderData(4, QtCore.Qt.Horizontal, '准确率') self.model.setHeaderData(5, QtCore.Qt.Horizontal, '是否到勤') self.model.select() view = self.ui.table_data_view view.setModel(self.model) view.setWindowTitle('数据表显示') db.close()
def __init__(self, a_db_filename: str, a_parent: QtCore.QObject): super().__init__(a_parent) self.__db = QtSql.QSqlDatabase.addDatabase("QSQLITE") self.__db.setDatabaseName(a_db_filename) self.__db.open() self.__query = QtSql.QSqlQuery() self.__query.exec( "CREATE TABLE IF NOT EXISTS netvars (id INTEGER PRIMARY KEY AUTOINCREMENT, " "name TEXT, _index REAL, type TEXT, min REAL, max REAL, _default REAL)" ) self.__allowed_types = ("double", "float", "bit", "u32", "i32", "u8", "i8", "u16", "i16", "bool", "u64", "i64") self.__model = QtSql.QSqlTableModel(a_parent) self.__model.setTable("netvars") self.__model.setSort(NetvarsDatabase.Column.INDEX, QtCore.Qt.AscendingOrder) headers = ["id", "Имя", "Индекс", "Тип", "Мин.", "Макс.", "По умолч."] for i in range(self.__model.columnCount()): self.__model.setHeaderData(i, QtCore.Qt.Horizontal, headers[i]) self.__real_columns = (NetvarsDatabase.Column.INDEX, NetvarsDatabase.Column.MIN, NetvarsDatabase.Column.MAX, NetvarsDatabase.Column.DEFAULT) self.__model.select() self.__model.dataChanged.connect(self.update_data)
def __init__(self): super().__init__() self.signup = Ui_HRM_User_view() self.signup.setupUi(self) self.db = QtSql.QSqlDatabase.addDatabase('QSQLITE') self.db.setDatabaseName('hrm_users.db') self.model = QtSql.QSqlTableModel() self.model.setTable('users') self.model.setEditStrategy(QtSql.QSqlTableModel.OnFieldChange) self.model.select() self.model.setHeaderData(0, QtCore.Qt.Horizontal, "id") self.model.setHeaderData(1, QtCore.Qt.Horizontal, "National ID") self.model.setHeaderData(2, QtCore.Qt.Horizontal, "Registration id") self.model.setHeaderData(3, QtCore.Qt.Horizontal, "Registration Date") self.model.setHeaderData(4, QtCore.Qt.Horizontal, "First Name") self.model.setHeaderData(5, QtCore.Qt.Horizontal, "Middle Name") self.model.setHeaderData(6, QtCore.Qt.Horizontal, "Last Name") self.model.setHeaderData(7, QtCore.Qt.Horizontal, "DOB") self.model.setHeaderData(8, QtCore.Qt.Horizontal, "User Name") self.model.setHeaderData(9, QtCore.Qt.Horizontal, "Phone") self.model.setHeaderData(10, QtCore.Qt.Horizontal, "Email") self.model.setHeaderData(11, QtCore.Qt.Horizontal, "Password") self.signup.tableWidget_records.setModel(self.model) self.signup.pushButton_reg.clicked.connect(self.addToDb) self.show() self.signup.pushButton_update.clicked.connect(self.updaterow) self.signup.pushButton_login.clicked.connect(self.welcomeWindowShow()) self.signup.pushButton_delete.clicked.connect(self.delrow) self.i = self.model.rowCount() self.signup.lcdNumber_user_id.display(self.i) print(self.signup.tableWidget_records.currentIndex().row())
def get_suppliers(self): sql.connectDB() model = QtSql.QSqlTableModel() q = QtSql.QSqlQuery() model.setTable("supplier_info") model.setEditStrategy(QtSql.QSqlTableModel.OnManualSubmit) model.setHeaderData(0, QtCore.Qt.Horizontal, "ID") model.setHeaderData(1, QtCore.Qt.Horizontal, "Name") model.setHeaderData(2, QtCore.Qt.Horizontal, "Contact") model.setHeaderData(3, QtCore.Qt.Horizontal, "City") model.setHeaderData(4, QtCore.Qt.Horizontal, "Region") model.setHeaderData(5, QtCore.Qt.Horizontal, "Fax") model.setHeaderData(6, QtCore.Qt.Horizontal, "Address") model.setHeaderData(7, QtCore.Qt.Horizontal, "Postal/Zip") model.setHeaderData(8, QtCore.Qt.Horizontal, "Email") model.setHeaderData(9, QtCore.Qt.Horizontal, "Registration No.") model.setHeaderData(10, QtCore.Qt.Horizontal, "No. of Products") model.setHeaderData(11, QtCore.Qt.Horizontal, "Remarks") model.setHeaderData(12, QtCore.Qt.Horizontal, "Date Added") model.select() self.supplierView.setModel(model) self.supplierView.horizontalHeader().setMinimumHeight(40) self.supplierView.horizontalHeader().setDefaultSectionSize(120) self.supplierView.setSelectionBehavior(QtWidgets.QTableView.SelectRows) self.supplierView.setColumnHidden(0, True) self.supplierView.setShowGrid(True) self.supplierView.show()