Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import sys
- from PyQt5.QtGui import *
- from PyQt5.QtCore import *
- from PyQt5.QtWidgets import *
- from pathlib import Path
- account = None
- loginwindow = None
- mainwindow = None
- formwidget = None
- subjectwindow = None
- #editassignmentwindow = None
- class Information:
- def __init__(self):
- print("something")
- def login(self, username, password):
- self.filep = Path("accounts.txt")
- self.fusername = False
- self.fpassword = False
- if self.filep.is_file():
- print("Found accounts file.")
- self.file = open("accounts.txt", "r")
- self.u = True
- for line in self.file:
- self.line = line.strip("\n")
- if self.u == True:
- if self.line == username:
- self.fusername = True
- print("Username true")
- self.u = False
- else:
- if self.line == password:
- self.fpassword = True
- print("password true")
- self.u = True
- self.file.close()
- if (self.fusername == True) and (self.fpassword == True):
- global account
- account = username
- return True
- else:
- return False
- else:
- print("File not found.")
- return False
- class MainWindow(QMainWindow):
- def __init__(self, parent=None):
- super().__init__()
- self.title = 'Agenda'
- self.left = 10
- self.top = 10
- self.width = 640
- self.height = 400
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- global formwidget
- formwidget = FormWidget(self)
- self.setCentralWidget(formwidget)
- '''global editassignmentwindow
- editassignmentwindow = EditAssignmentWindow()
- editassignmentwindow.hide()'''
- self.center()
- print("Main window initialized.")
- def update(self):
- self.setCentralWidget(formwidget)
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Main window closed.")
- class FormWidget(QWidget):
- def __init__(self, parent):
- super(FormWidget, self).__init__(parent)
- #open schedule file
- self.file = open(account + "_schedule" + ".txt", "r")
- '''self.filelen = 0
- for line in self.file:
- print(line)
- self.filelen = self.filelen + 1
- print("there are " + str(self.filelen) + " lines in the file.")'''
- #container widget
- #file syntax is as follows
- # Assignment | Subject | Due Date
- self.layout = QGridLayout(self)
- self.assignmentdonec = []
- self.assignmentedit = []
- self.filelen = 0
- for line in self.file:
- self.line = line.split(",")
- self.assignmentl = QLabel(self.line[0])
- self.layout.addWidget(self.assignmentl, self.filelen, 0, 1, 1)
- self.subjectl = QLabel(self.line[1])
- self.layout.addWidget(self.subjectl, self.filelen, 1, 1, 1)
- self.duedatel = QLabel(self.line[2])
- self.layout.addWidget(self.duedatel, self.filelen, 2, 1, 1)
- self.assignmentdonec.append(QCheckBox(''))
- self.layout.addWidget(self.assignmentdonec[self.filelen], self.filelen, 3, 1, 1)
- self.assignmentdonec[self.filelen].stateChanged.connect(self.assignmentcheck)
- self.assignmentedit.append(QPushButton('edit', self))
- self.layout.addWidget(self.assignmentedit[self.filelen], self.filelen, 4, 1, 1)
- self.assignmentedit[self.filelen].clicked[bool].connect(self.editassignmentbutton)
- self.filelen = self.filelen + 1
- self.file.close()
- print("there are " + str(self.filelen) + " lines in the file.")
- self.containerwidget = QWidget()
- self.containerwidget.setLayout(self.layout)
- #scroll area
- self.scroll = QScrollArea()
- self.scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
- self.scroll.setWidget(self.containerwidget)
- #scroll area layer add
- self.vLayout = QGridLayout(self)
- self.addab = QPushButton('Add Assignment', self)
- self.vLayout.addWidget(self.addab, 0, 1, 1, 1)
- self.addab.clicked[bool].connect(self.assignmentbutton)
- self.addsb = QPushButton('Add Subject', self)
- self.vLayout.addWidget(self.addsb, 0, 2, 1, 1)
- self.addsb.clicked[bool].connect(self.subjectbutton)
- self.testb = QPushButton('test', self)
- self.vLayout.addWidget(self.testb, 1, 0, 1, 1)
- self.welcomel = QLabel("Welcome, " + account)
- self.vLayout.addWidget(self.welcomel, 0, 0, 1, 1)
- self.vLayout.addWidget(self.scroll)
- self.vLayout.addWidget(self.scroll, 1, 1, 1, 2)
- self.setLayout(self.vLayout)
- '''vLayout = QVBoxLayout(self)
- vLayout.addWidget(self.scroll)
- self.setLayout(vLayout)'''
- #self.setLayout(self.layout)
- def subjectbutton(self):
- global subjectwindow
- subjectwindow = SubjectWindow()
- subjectwindow.show()
- print("Registration window displayed.")
- def assignmentbutton(self):
- self.addassignmentwindow = AddAssignmentWindow()
- self.addassignmentwindow.show()
- def editassignmentbutton(self):
- '''editassignmentwindow.update()
- editassignmentwindow.show()'''
- sending_button = self.sender()
- print(str(sending_button))
- self.index = 0
- for x in self.assignmentedit:
- if x == sending_button:
- print("i found the dabbing")
- self.pos = self.index
- else:
- self.index = self.index + 1
- print(str(self.pos))
- self.file = open(account + "_schedule" + ".txt", "r")
- self.index = 0
- for line in self.file:
- if self.index == self.pos:
- self.info = line.strip("\n")
- self.index = self.index + 1
- self.file.close()
- self.info = self.info.split(",")
- self.info[2] = QDate.fromString(self.info[2], 'yyyy-MM-dd')
- self.editassignmentwindow = EditAssignmentWindow()
- self.editassignmentwindow.show()
- self.editassignmentwindow.update(self.info[0], self.info[1], self.info[2], self.pos)
- print(self.info)
- def assignmentcheck(self):
- print("you dabbed")
- self.index = 0
- for x in self.assignmentdonec:
- if x.isChecked() == True:
- print("i found the dabber")
- self.pos = self.index
- else:
- self.index = self.index + 1
- print("I think it's this one here: " + str(self.assignmentdonec[self.pos]))
- self.file = open(account + "_schedule" + ".txt", "r")
- self.lines = self.file.readlines()
- self.file.close()
- self.index = 0
- self.file = open(account + "_schedule" + ".txt", "w")
- print("ready to delete")
- for line in self.lines:
- print("index: " + str(self.index) + " pos: " + str(self.pos))
- if self.index != self.pos:
- self.file.write(line)
- print(line)
- else:
- print("we deleted something")
- self.index = self.index + 1
- self.file.close()
- self.update()
- print("we done")
- def update(self):
- for i in reversed(range(self.layout.count())):
- self.layout.itemAt(i).widget().setParent(None)
- for i in range(self.layout.count()):
- print(i)
- print(self.layout)
- print("cleared self.layout")
- '''for i in reversed(range(self.vLayout.count())):
- self.vLayout.itemAt(i).widget().setParent(None)'''
- print("cleared self.vLayout")
- self.layout.removeWidget(self.containerwidget)
- self.file = open(account + "_schedule" + ".txt", "r")
- print("here3?")
- #self.layout = QGridLayout(self)
- print("^")
- self.assignmentdonec = []
- self.assignmentedit = []
- self.filelen = 0
- for line in self.file:
- self.line = line.split(",")
- self.assignmentl = QLabel(self.line[0])
- self.layout.addWidget(self.assignmentl, self.filelen, 0, 1, 1)
- self.subjectl = QLabel(self.line[1])
- self.layout.addWidget(self.subjectl, self.filelen, 1, 1, 1)
- self.duedatel = QLabel(self.line[2])
- self.layout.addWidget(self.duedatel, self.filelen, 2, 1, 1)
- self.assignmentdonec.append(QCheckBox(''))
- self.layout.addWidget(self.assignmentdonec[self.filelen], self.filelen, 3, 1, 1)
- self.assignmentdonec[self.filelen].stateChanged.connect(self.assignmentcheck)
- self.assignmentedit.append(QPushButton('edit', self))
- self.layout.addWidget(self.assignmentedit[self.filelen], self.filelen, 4, 1, 1)
- self.assignmentedit[self.filelen].clicked[bool].connect(self.editassignmentbutton)
- self.filelen = self.filelen + 1
- self.file.close()
- self.containerwidget = QWidget()
- self.containerwidget.setLayout(self.layout)
- #scroll area
- self.scroll = QScrollArea()
- self.scroll.setVerticalScrollBarPolicy(Qt.ScrollBarAlwaysOn)
- self.scroll.setWidget(self.containerwidget)
- #scroll area layer add
- print("here1")
- #self.vLayout = QGridLayout(self)
- print("^")
- self.addab = QPushButton('Add Assignment', self)
- self.vLayout.addWidget(self.addab, 0, 1, 1, 1)
- self.addab.clicked[bool].connect(self.assignmentbutton)
- self.addsb = QPushButton('Add Subject', self)
- self.vLayout.addWidget(self.addsb, 0, 2, 1, 1)
- self.addsb.clicked[bool].connect(self.subjectbutton)
- self.testb = QPushButton('test', self)
- self.vLayout.addWidget(self.testb, 1, 0, 1, 1)
- self.welcomel = QLabel("Welcome, " + account)
- self.vLayout.addWidget(self.welcomel, 0, 0, 1, 1)
- self.vLayout.addWidget(self.scroll)
- self.vLayout.addWidget(self.scroll, 1, 1, 1, 2)
- print("here2")
- self.setLayout(self.vLayout)
- print("^")
- '''vLayout = QVBoxLayout(self)
- vLayout.addWidget(self.scroll)
- self.setLayout(vLayout)'''
- #self.setLayout(self.layout)
- print("updated")
- class SubjectWindow(QDialog):
- def __init__(self):
- super().__init__()
- self.title = 'Add Subject'
- self.left = 10
- self.top = 10
- self.width = 200
- self.height = 200
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.layout = QGridLayout()
- self.listWidget = QListWidget()
- self.file = open(account + "_subjects" + ".txt", "r")
- self.filelen = 0
- for line in self.file:
- self.line = line.strip("\n")
- self.listWidget.addItem(self.line)
- self.filelen = self.filelen + 1
- self.file.close()
- self.layout.addWidget(self.listWidget, 0, 0, 1, 2)
- self.addsb = QPushButton('Add', self)
- self.layout.addWidget(self.addsb, 1, 0, 1, 1)
- self.addsb.clicked[bool].connect(self.addbutton)
- self.removesb = QPushButton('Remove', self)
- self.layout.addWidget(self.removesb, 1, 1, 1, 1)
- self.removesb.clicked[bool].connect(self.removebutton)
- self.doneb = QPushButton('Done', self)
- self.layout.addWidget(self.doneb, 2, 1, 1, 1)
- self.doneb.clicked[bool].connect(self.donebutton)
- self.setLayout(self.layout)
- self.center()
- def update(self):
- self.layout.removeWidget(self.listWidget)
- self.listWidget.clear()
- self.file = open(account + "_subjects" + ".txt", "r")
- self.filelen = 0
- for line in self.file:
- self.line = line.strip("\n")
- self.listWidget.addItem(self.line)
- self.filelen = self.filelen + 1
- self.file.close()
- self.layout.addWidget(self.listWidget, 0, 0, 1, 2)
- print("updated")
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Login window closed.")
- def addbutton(self):
- #self.setModal(0)
- self.addsubjectwindow = AddSubjectWindow()
- self.addsubjectwindow.show()
- print("Registration window displayed.")
- def removebutton(self):
- if self.listWidget.currentItem() != None:
- self.subject = self.listWidget.currentItem().text()
- reply = QMessageBox.question(self, 'Message',
- "All assignments for '" + self.subject + "' will be deleted.", QMessageBox.Yes |
- QMessageBox.No, QMessageBox.No)
- if reply == QMessageBox.Yes:
- #deletes subject from account_subjects.txt
- self.done = False
- self.file = open(account + "_subjects" + ".txt", "r")
- self.lines = self.file.readlines()
- self.file.close()
- self.file = open(account + "_subjects" + ".txt", "w")
- for line in self.lines:
- if line==self.subject+"\n":
- self.done = True
- else:
- self.file.write(line)
- self.file.close()
- if self.done == False:
- print("something went wrong.")
- subjectwindow.update()
- #deletes assignments with now deleted subjects
- self.file = open(account + "_schedule" + ".txt", "r")
- self.lines = self.file.readlines()
- self.file.close()
- self.file = open(account + "_schedule" + ".txt", "w")
- for line in self.lines:
- self.line = line.split(",")
- if self.line[1] != self.subject:
- self.file.write(line)
- self.file.close()
- formwidget.update()
- print("dabbed")
- else:
- print("dabbed")
- else:
- print("nothing to delete")
- def donebutton(self):
- self.hide()
- print("Registration window displayed.")
- class AddSubjectWindow(QDialog):
- def __init__(self):
- super(AddSubjectWindow, self).__init__()
- self.title = 'Add Subject'
- self.left = 10
- self.top = 10
- self.width = 200
- self.height = 100
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- #self.loginwindow = LoginWindow()
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.subjectl = QLabel('Subject', self)
- self.subjectl.move(20, 20)
- self.subjectl.resize(50, 20)
- self.subjectf = QLineEdit(self)
- self.subjectf.move(80, 20)
- self.subjectf.resize(100,20)
- self.addsb = QPushButton('Add', self)
- self.addsb.move(75, 50)
- self.addsb.resize(50, 25)
- self.addsb.clicked[bool].connect(self.addbutton)
- self.cancelsb = QPushButton('Cancel', self)
- self.cancelsb.move(130, 50)
- self.cancelsb.resize(50, 25)
- self.cancelsb.clicked[bool].connect(self.cancelbutton)
- self.center()
- print("Registration window initialized.")
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Registration window closed.")
- def cancelbutton(self):
- self.hide()
- print("loginbutton")
- def addbutton(self):
- if self.subjectf.text() != '':
- self.file = open(account + "_subjects" + ".txt", "a")
- self.file.write(self.subjectf.text() + "\n")
- self.file.close()
- subjectwindow.update()
- self.hide()
- else:
- print("fail")
- class AddAssignmentWindow(QDialog):
- def __init__(self):
- super().__init__()
- self.title = 'Add Assignment'
- self.left = 10
- self.top = 10
- self.width = 220
- self.height = 150
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.assignmentl = QLabel('Assignment', self)
- self.assignmentl.move(20, 20)
- self.assignmentl.resize(70, 20)
- self.assignmentf = QLineEdit(self)
- self.assignmentf.move(100, 20)
- self.assignmentf.resize(100,20)
- self.subjectl = QLabel('Subject', self)
- self.subjectl.move(20, 50)
- self.subjectl.resize(50, 20)
- self.subjectBox = QComboBox(self)
- self.file = open(account + "_subjects" + ".txt", "r")
- self.filelen = 0
- for line in self.file:
- self.line = line.strip("\n")
- self.subjectBox.addItem(self.line)
- self.filelen = self.filelen + 1
- self.file.close()
- self.subjectBox.move(100, 50)
- self.subjectBox.resize(100, 20)
- self.datel = QLabel('Assignment', self)
- self.datel.move(20, 80)
- self.datel.resize(70, 20)
- self.datef = QDateEdit(self)
- self.datef.setDate(QDate.currentDate())
- self.datef.move(100, 80)
- self.datef.resize(100,20)
- self.addb = QPushButton('Add Assignment', self)
- self.addb.move(100,110)
- self.addb.resize(100,25)
- self.addb.clicked[bool].connect(self.addbutton)
- self.cancelb = QPushButton('Cancel', self)
- self.cancelb.move(40,110)
- self.cancelb.resize(50,25)
- self.cancelb.clicked[bool].connect(self.cancelbutton)
- self.errortextl = QLabel('', self)
- self.errortextl.setAlignment(Qt.AlignCenter)
- self.errortextl.move(10, 135)
- self.errortextl.resize(180, 20)
- self.center()
- self.show()
- print("Login window initialized.")
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Login window closed.")
- def addbutton(self):
- if (self.assignmentf.text() == '') or (self.subjectBox.currentText() == '') or (self.datef.text() == ''):
- print("something is empty")
- else:
- print("dab")
- print(self.assignmentf.text())
- print(self.subjectBox.currentText())
- print(self.datef.date())
- self.date = self.datef.date().toString('yyyy-MM-dd')
- self.file = open(account + "_schedule" + ".txt", "a")
- self.file.write(self.assignmentf.text() + "," + self.subjectBox.currentText() + "," + self.date + "\n")
- self.file.close()
- formwidget.update()
- self.hide()
- def cancelbutton(self):
- self.hide()
- print("loginbutton")
- class EditAssignmentWindow(QDialog):
- def __init__(self):
- super().__init__()
- self.title = 'Edit Assignment'
- self.left = 10
- self.top = 10
- self.width = 220
- self.height = 150
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.assignmentl = QLabel('Assignment', self)
- self.assignmentl.move(20, 20)
- self.assignmentl.resize(70, 20)
- self.assignmentf = QLineEdit(self)
- self.assignmentf.move(100, 20)
- self.assignmentf.resize(100,20)
- self.subjectl = QLabel('Subject', self)
- self.subjectl.move(20, 50)
- self.subjectl.resize(50, 20)
- self.subjectBox = QComboBox(self)
- self.file = open(account + "_subjects" + ".txt", "r")
- self.filelen = 0
- for line in self.file:
- self.line = line.strip("\n")
- self.subjectBox.addItem(self.line)
- self.filelen = self.filelen + 1
- self.file.close()
- self.subjectBox.move(100, 50)
- self.subjectBox.resize(100, 20)
- self.datel = QLabel('Assignment', self)
- self.datel.move(20, 80)
- self.datel.resize(70, 20)
- self.datef = QDateEdit(self)
- self.datef.setDate(QDate.currentDate())
- self.datef.move(100, 80)
- self.datef.resize(100,20)
- self.updateb = QPushButton('Update Assignment', self)
- self.updateb.move(100,110)
- self.updateb.resize(100,25)
- self.updateb.clicked[bool].connect(self.updatebutton)
- self.cancelb = QPushButton('Cancel', self)
- self.cancelb.move(40,110)
- self.cancelb.resize(50,25)
- self.cancelb.clicked[bool].connect(self.cancelbutton)
- self.errortextl = QLabel('', self)
- self.errortextl.setAlignment(Qt.AlignCenter)
- self.errortextl.move(10, 135)
- self.errortextl.resize(180, 20)
- self.center()
- self.show()
- print("Login window initialized.")
- def update(self, assignment, subject, date, pos):
- self.location = pos
- print(self.assignmentf.text())
- self.assignmentf.setText(assignment)
- self.file = open(account + "_subjects" + ".txt", "r")
- self.index = 0
- for line in self.file:
- self.line = line.strip("\n")
- if self.line == subject:
- self.pos = self.index
- self.index = self.index + 1
- self.file.close()
- self.subjectBox.setCurrentIndex(self.pos)
- self.datef.setDate(date)
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Login window closed.")
- def updatebutton(self):
- print(self.location)
- self.done = False
- self.file = open(account + "_schedule" + ".txt", "r")
- self.lines = self.file.readlines()
- self.file.close()
- self.file = open(account + "_schedule" + ".txt", "w")
- self.index = 0
- for line in self.lines:
- if self.index == self.location:
- self.date = self.datef.date().toString('yyyy-MM-dd')
- self.file.write(self.assignmentf.text() + "," + self.subjectBox.currentText() + "," + self.date + "\n")
- else:
- self.file.write(line)
- self.index = self.index + 1
- self.file.close()
- if self.done == False:
- print("something went wrong.")
- formwidget.update()
- self.hide()
- def cancelbutton(self):
- self.hide()
- print("loginbutton")
- class LoginWindow(QDialog):
- def __init__(self):
- super().__init__()
- self.title = 'LoginWindow'
- self.left = 10
- self.top = 10
- self.width = 200
- self.height = 130
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- self.registrationwindow = RegistrationWindow()
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.usernamel = QLabel('Username', self)
- self.usernamel.move(20, 20)
- self.usernamel.resize(50, 20)
- self.usernamef = QLineEdit(self)
- self.usernamef.move(75, 20)
- self.usernamef.resize(100,20)
- self.passwordl = QLabel('Password', self)
- self.passwordl.move(20, 50)
- self.passwordl.resize(50, 20)
- self.passwordf = QLineEdit(self)
- self.passwordf.setEchoMode(QLineEdit.Password)
- self.passwordf.move(75, 50)
- self.passwordf.resize(100,20)
- self.loginb = QPushButton('Login', self)
- self.loginb.move(125,80)
- self.loginb.resize(50,25)
- self.loginb.clicked[bool].connect(self.loginbutton)
- self.createb = QPushButton('Create an Account', self)
- self.createb.move(20,80)
- self.createb.resize(100,25)
- self.createb.clicked[bool].connect(self.registrationbutton)
- self.errortextl = QLabel('', self)
- self.errortextl.setAlignment(Qt.AlignCenter)
- self.errortextl.move(10, 105)
- self.errortextl.resize(180, 20)
- self.center()
- self.show()
- print("Login window initialized.")
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Login window closed.")
- def loginbutton(self):
- if (self.usernamef.text() == '') or (self.passwordf.text() == ''):
- self.errortextl.setText('Not all fields are filled out.')
- else:
- information = Information()
- if information.login(self.usernamef.text(), self.passwordf.text()) == True:
- print("logged in")
- self.hide()
- global mainwindow
- mainwindow = MainWindow()
- mainwindow.show()
- else:
- self.errortextl.setText("Username and/or password is is incorrect.")
- def registrationbutton(self):
- self.hide()
- self.registrationwindow.show()
- print("Registration window displayed.")
- class RegistrationWindow(QDialog):
- def __init__(self):
- super(RegistrationWindow, self).__init__()
- self.title = 'RegistrationWindow'
- self.left = 10
- self.top = 10
- self.width = 250
- self.height = 165
- self.setWindowFlags(Qt.WindowStaysOnTopHint)
- self.setModal(1)
- #self.loginwindow = LoginWindow()
- self.initUI()
- def initUI(self):
- self.setWindowTitle(self.title)
- self.setGeometry(self.left, self.top, self.width, self.height)
- self.usernamel = QLabel('Username', self)
- self.usernamel.move(60, 20)
- self.usernamel.resize(50, 20)
- self.usernamef = QLineEdit(self)
- self.usernamef.move(115, 20)
- self.usernamef.resize(100,20)
- self.passwordl = QLabel('Password', self)
- self.passwordl.move(60, 50)
- self.passwordl.resize(50, 20)
- self.passwordf = QLineEdit(self)
- self.passwordf.setEchoMode(QLineEdit.Password)
- self.passwordf.move(115, 50)
- self.passwordf.resize(100,20)
- self.cpasswordl = QLabel('Confirm Password', self)
- self.cpasswordl.move(20, 80)
- self.cpasswordl.resize(100, 20)
- self.cpasswordf = QLineEdit(self)
- self.cpasswordf.setEchoMode(QLineEdit.Password)
- self.cpasswordf.move(115, 80)
- self.cpasswordf.resize(100,20)
- self.registerb = QPushButton('Register', self)
- self.registerb.move(140,110)
- self.registerb.resize(75,25)
- self.registerb.clicked[bool].connect(self.registerbutton)
- self.loginb = QPushButton('Login', self)
- self.loginb.move(50,110)
- self.loginb.resize(75,25)
- self.loginb.clicked[bool].connect(self.loginbutton)
- self.errortextl = QLabel('', self)
- self.errortextl.setAlignment(Qt.AlignCenter)
- self.errortextl.move(25, 140)
- self.errortextl.resize(200, 20)
- self.center()
- print("Registration window initialized.")
- def center(self):
- qr = self.frameGeometry()
- cp = QDesktopWidget().availableGeometry().center()
- qr.moveCenter(cp)
- self.move(qr.topLeft())
- def closeEvent(self, event):
- print("Registration window closed.")
- def loginbutton(self):
- self.loginwindow = LoginWindow()
- self.loginwindow.show()
- self.hide()
- print("loginbutton")
- #print("Registration window displayed.")
- def registerbutton(self):
- print("registerbutton")
- if (self.usernamef.text() == '') or (self.passwordf.text() == '') or (self.cpasswordf.text() == ''):
- self.errortextl.setText('Not all fields are filled out.')
- elif self.passwordf.text() != self.cpasswordf.text():
- self.errortextl.setText('Passwords are not the same.')
- else:
- print("Creating account with username: " + self.usernamef.text() + " + and password: " + self.passwordf.text())
- self.file = open("accounts.txt", "a")
- self.file.write(self.usernamef.text() + "\n" + self.passwordf.text() + "\n")
- self.file.close()
- self.file = open(self.usernamef.text() + "_subjects" + ".txt", "w")
- self.file = open(self.usernamef.text() + "_schedule" + ".txt", "w")
- self.hide()
- global loginwindow
- loginwindow = LoginWindow()
- loginwindow.show()
- if __name__ == '__main__':
- app = QApplication(sys.argv)
- loginwindow = LoginWindow()
- sys.exit(app.exec_())
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement