Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- import pymysql.cursors
- from PyQt5.QtWidgets import *
- from PyQt5.QtGui import *
- from PyQt5.QtCore import *
- from PyQt5.Qt import center
- from PyQt5 import QtSql
- cnx = pymysql.connect(user ='root',
- password= '1234',
- host='127.0.0.1',
- database='Rossmann2')
- cursor = cnx.cursor()
- class table(QWidget):
- def __init__(self):
- super().__init__()
- self.left = 10
- self.top = 10
- self.width = 1115
- self.height = 600
- self.initUI()
- def initUI(self):
- self.grid = QVBoxLayout(self)
- self.tabs = QTabWidget()
- self.tab1 = QWidget()
- self.tab2 = QWidget()
- self.tabs.addTab(self.tab1, "Database")
- self.tabs.addTab(self.tab2, "Tilføj")
- self.createTable1()
- self.tab1.grid = QVBoxLayout(self)
- self.label = QLabel("Butikker")
- self.loadButton = QPushButton("Hent")
- self.loadButton.clicked.connect(self.loadSQLData)
- self.tab1.grid.addWidget(self.label)
- self.tab1.grid.addWidget(self.loadButton)
- self.tab1.grid.addWidget(self.tableWidget1)
- self.tab1.setLayout(self.tab1.grid)
- name = QLabel("Butiks navn:")
- zipcode = QLabel("Post nr:")
- city = QLabel("By:")
- adress = QLabel("Adresse:")
- open_mofr = QLabel("Åben man-fre:")
- close_mofr = QLabel("Luk man-fre:")
- open_sat = QLabel("Åben lør:")
- close_sat = QLabel("Luk lør:")
- self.nameEdit = QLineEdit()
- self.nameEdit.setMaximumWidth(150)
- self.zipcodeEdit = QLineEdit()
- self.zipcodeEdit.setMaximumWidth(150)
- self.cityEdit = QLineEdit()
- self.cityEdit.setMaximumWidth(150)
- self.adressEdit = QLineEdit()
- self.adressEdit.setMaximumWidth(150)
- self.open_mofrEdit = QLineEdit()
- self.open_mofrEdit.setMaximumWidth(150)
- self.close_mofrEdit = QLineEdit()
- self.close_mofrEdit.setMaximumWidth(150)
- self.open_satEdit = QLineEdit()
- self.open_satEdit.setMaximumWidth(150)
- self.close_satEdit = QLineEdit()
- self.close_satEdit.setMaximumWidth(150)
- self.tab2.grid = QGridLayout()
- self.tab2.grid.setSpacing(10)
- self.tab2.grid.addWidget(name, 1, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.nameEdit, 1, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(zipcode, 2, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.zipcodeEdit, 2, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(city, 3, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.cityEdit, 3, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(adress, 4, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.adressEdit, 4, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(open_mofr, 5, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.open_mofrEdit, 5, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(close_mofr, 6, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.close_mofrEdit, 6, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(open_sat, 7, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.open_satEdit, 7, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.tab2.grid.addWidget(close_sat, 8, 0, 1, 2, Qt.AlignRight)
- self.tab2.grid.addWidget(self.close_satEdit, 8, 3, 1, 2, Qt.AlignLeft)
- self.tab2.setLayout(self.tab2.grid)
- self.saveButton = QPushButton("Tilføj")
- self.saveButton.clicked.connect(self.addShop)
- self.tab2.grid.addWidget(self.saveButton, 9, 1, 1, 2, Qt.AlignRight)
- self.grid.addWidget(self.tabs)
- self.setLayout(self.grid)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.show()
- def createTable1(self):
- self.object1 = QWidget()
- self.object1.setObjectName("object")
- self.tableWidget1 = QTableWidget(self.object1)
- self.tableWidget1.setObjectName("tableWidget")
- self.tableWidget1.setEditTriggers(QAbstractItemView.NoEditTriggers)
- def loadSQLData(self):
- select = ("""
- SELECT Navn_Butik, Postnr, By_Navn, Adresse, Åben_manfre, Luk_manfre, Åben_lør, Luk_lør
- FROM json_file
- ORDER BY By_navn;
- """)
- cursor.execute(select)
- result = cursor.fetchall()
- self.tableWidget1.setRowCount(0)
- self.tableWidget1.setColumnCount(8)
- item = QTableWidgetItem("Butiks navn")
- self.tableWidget1.setHorizontalHeaderItem(0, item)
- item = QTableWidgetItem("Post nr.")
- self.tableWidget1.setHorizontalHeaderItem(1, item)
- item = QTableWidgetItem("By")
- self.tableWidget1.setHorizontalHeaderItem(2, item)
- item = QTableWidgetItem("Adresse")
- self.tableWidget1.setHorizontalHeaderItem(3, item)
- item = QTableWidgetItem("Åbning man-fre")
- self.tableWidget1.setHorizontalHeaderItem(4, item)
- item = QTableWidgetItem("Luk man-fre")
- self.tableWidget1.setHorizontalHeaderItem(5, item)
- item = QTableWidgetItem("Åbning lør")
- self.tableWidget1.setHorizontalHeaderItem(6, item)
- item = QTableWidgetItem("Luk lør")
- self.tableWidget1.setHorizontalHeaderItem(7, item)
- for row_number, row_data in enumerate(result):
- self.tableWidget1.insertRow(row_number)
- for column_number, data in enumerate(row_data):
- self.tableWidget1.setItem(row_number, column_number, QTableWidgetItem(str(data)))
- self.tableWidget1.setColumnWidth(0,250) #Navn
- self.tableWidget1.setColumnWidth(1,75) #Postnr
- self.tableWidget1.setColumnWidth(2,150) #By
- self.tableWidget1.setColumnWidth(3,200) #Adresse
- self.tableWidget1.setColumnWidth(4,90) #Åben man-fre
- self.tableWidget1.setColumnWidth(5,80) #Luk man-fre
- self.tableWidget1.setColumnWidth(6,80) #Åben lør
- self.tableWidget1.setColumnWidth(7,65) #Luk lør
- def addShop(self):
- name1 = self.nameEdit.text()
- zipcode1 = self.zipcodeEdit.text()
- city1 = self.cityEdit.text()
- adress1 = self.adressEdit.text()
- open_mofr1 = self.open_mofrEdit.text()
- close_mofr1 = self.close_mofrEdit.text()
- open_sat1 = self.open_satEdit.text()
- close_sat1 = self.close_satEdit.text()
- query = ("""
- INSERT INTO json_file
- VALUES (%s, %s, %s, %s, %s, %s, %s, %s)""")
- cursor.execute(query, (name1, zipcode1, city1, adress1, open_mofr1, close_mofr1, open_sat1, close_sat1))
- if __name__ == '__main__':
- app = QApplication(sys.argv)
- tb = table()
- sys.exit(app.exec_())
- cnx.close()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement