#!/usr/bin/python3
# -*- coding: utf-8 -*-
import sys
from PyQt5.QtWidgets import (QWidget, QPushButton, QLineEdit, QInputDialog, QApplication, QMessageBox, QLabel, QVBoxLayout, QErrorMessage)
user = {"veronika": "1234"}
userItems = user.items()
class AnotherWindow(QWidget):
def __init__(self):
super().__init__()
layout = QVBoxLayout()
self.label = QLabel("Добро пожаловать")
layout.addWidget(self.label)
self.setLayout(layout)
self.setGeometry(600, 500, 500, 300)
self.setWindowTitle("ВКонтакте")
class AnotherWindow2(QWidget):
def __init__(self):
super().__init__()
layout1 = QVBoxLayout()
self.label = QLabel("Добро пожаловать")
layout1.addWidget(self.label)
self.setLayout(layout1)
self.setGeometry(600, 500, 500, 300)
self.setWindowTitle("ВКонтакте")
class MainWindow(QWidget):
def __init__(self):
super().__init__()
self.w = None
self.z = None
self.btn = QPushButton('Авторизация ', self)
self.btn.move(145, 50)
self.btn.clicked.connect(self.authorization)
self.btn1 = QPushButton('Регистрация ', self)
self.btn1.move(145, 100)
self.btn1.clicked.connect(self.registration)
self.setGeometry(800, 400, 390, 200)
self.setWindowTitle('ВКонтакте')
self.show()
def authorization(self):
print(user)
self.w = None
name1, ok3 = QInputDialog.getText(self, 'Авторизация', 'Введите логин:')
password1, ok4 = QInputDialog.getText(self, 'Авторизация', 'Введите пароль:')
if ok4:
x = False
self.w = None
self.z = None
while x == False:
if (name1, password1) in userItems:
x = True
if self.z is None:
self.z = AnotherWindow2()
self.z.label.setText("Добро пожаловать, " + name1)
self.z.show()
else:
error = QMessageBox.critical(self, "Ошибка", "Неправильный логин или пароль!")
break
def registration(self):
name, ok2 = QInputDialog.getText(self, 'Регистрация', 'Введите логин:')
if name in user:
error = QMessageBox.critical(self, "Ошибка", "Пользователь c таким именем уже существует")
else:
password, ok1 = QInputDialog.getText(self, 'Регистрация', 'Введите пароль:')
password2, ok0 = QInputDialog.getText(self, 'Регистрация', 'Повторите пароль:')
if ok0:
self.z = None
self.w = None
y = False
while y == False:
if password == password2:
if (name, password) not in userItems:
user[name] = password
print(user)
y = True
if self.w is None:
self.w = AnotherWindow()
self.w.label.setText("Добро пожаловать, "+name)
self.w.show()
else:
error = QMessageBox.critical(self,"Ошибка", "Пользователь уже существует")
break
else:
password = QInputDialog.getText(self, 'Регистрация', 'Введите еще раз пароль:')
password2 = QInputDialog.getText(self, 'Регистрация', 'Повторите пароль:')
app = QApplication(sys.argv)
ex = MainWindow()
sys.exit(app.exec_())
Весь мой код не влез, поэтому дополнительно скинула остаток кода.