Есть в qt designer и pathon окна авторизации и регистрации, нужно написать код чтобы ты сначала ты открываешь окно с авторизацией далее выбираешь регистрацию и вводишь туда данные сохраняешь и вводишь их для авторизации
Файл Registration.ui и Authorization.ui
Код окна с авторизацией
<?xml version=“1.0” encoding=“UTF-8”?>
<ui version=“4.0”>
<class>Authorization</class>
<widget class=“QMainWindow” name=“Authorization”>
<property name=“geometry”>
<rect>
<x>0</x>
<y>0</y>
<width>705</width>
<height>557</height>
</rect>
</property>
<property name=“windowTitle”>
<string>MainWindow</string>
</property>
<property name=“styleSheet”>
<string notr=“true”>background-color: rgb(0, 196, 255);</string>
</property>
<widget class=“QWidget” name=“centralwidget”>
<layout class=“QGridLayout” name=“gridLayout”>
<item row=“1” column=“1”>
<widget class=“QWidget” name=“widget” native=“true”>
<property name=“minimumSize”>
<size>
<width>400</width>
<height>400</height>
</size>
</property>
<property name=“maximumSize”>
<size>
<width>400</width>
<height>400</height>
</size>
</property>
<property name=“styleSheet”>
<string notr=“true”>QWidget {
background-color: rgb(255, 255, 255);
border-radius: 15px;
}
</string>
</property>
<widget class=“QWidget” name=“”>
<property name=“geometry”>
<rect>
<x>60</x>
<y>40</y>
<width>281</width>
<height>311</height>
</rect>
</property>
<layout class=“QVBoxLayout” name=“verticalLayout_2”>
<item>
<widget class=“QLabel” name=“label”>
<property name=“minimumSize”>
<size>
<width>50</width>
<height>49</height>
</size>
</property>
<property name=“maximumSize”>
<size>
<width>16777215</width>
<height>50</height>
</size>
</property>
<property name=“font”>
<font>
<pointsize>16</pointsize>
<weight>75</weight>
<italic>false</italic>
<bold>true</bold>
<underline>false</underline>
</font>
</property>
<property name=“layoutDirection”>
<enum>Qt::LeftToRight</enum>
</property>
<property name=“text”>
<string>АВТОРИЗАЦИЯ</string>
</property>
<property name=“alignment”>
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; /* Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Логин</string>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit_2”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; / Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Пароль</string>
</property>
</widget>
</item>
<item alignment=“Qt::AlignHCenter”>
<widget class=“QCheckBox” name=“checkBox”>
<property name=“styleSheet”>
<string notr=“true”>QCheckBox {
spacing: 5px; / Отступ между квадратом и текстом /
}





</string>
</property>
<property name=“text”>
<string>запомнить меня на этом компьютере</string>
</property>
</widget>
</item>
<item alignment=“Qt::AlignHCenter”>
<widget class=“QPushButton” name=“pushButton”>
<property name=“font”>
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name=“styleSheet”>
<string notr=“true”>QPushButton {
color: rgb(255, 255, 255);
width: 80px;
height: 30px;
border-radius: 10px; / Радиус скругления краев /
background-color: rgb(0, 196, 255); / Фон кнопки /
}

QPushButton:hover {
background-color: darkgray; / Фон кнопки при наведении мыши /
}

QPushButton:pressed {
background-color: darkgray; / Фон кнопки при нажатии /
}</string>
</property>
<property name=“text”>
<string>ВОЙТИ</string>
</property>
<property name=“iconSize”>
<size>
<width>16</width>
<height>16</height>
</size>
</property>
</widget>
</item>
<item>
<widget class=“QPushButton” name=“pushButton_2”>
<property name=“styleSheet”>
<string notr=“true”>QPushButton {
border: none; / Убираем границы /
background-color: transparent; / Прозрачный фон /
color: rgb(0, 0, 127); / Синий цвет текста /
text-align: center; / Текст слева /
qproperty-icon: url(none); / Убираем иконку (если она есть) /
qproperty-flat: true; / Убираем 3D-эффект /
padding: 2px 10px; / Добавляем внутренние отступы /
font: 10pt “Sans Serif”; / Настраиваем шрифт /
}

QPushButton:hover {
text-decoration: underline; / Подчеркивание при наведении /
}</string>
</property>
<property name=“text”>
<string>Забыли пароль?</string>
</property>
</widget>
</item>
<item>
<widget class=“QPushButton” name=“pushButton_3”>
<property name=“styleSheet”>
<string notr=“true”>QPushButton {
border: none; / Убираем границы /
background-color: transparent; / Прозрачный фон /
color: rgb(0, 0, 127); / Синий цвет текста /
text-align: center; / Текст слева /
qproperty-icon: url(none); / Убираем иконку (если она есть) /
qproperty-flat: true; / Убираем 3D-эффект /
padding: 2px 10px; / Добавляем внутренние отступы /
font: 10pt “Sans Serif”; / Настраиваем шрифт /
}

QPushButton:hover {
text-decoration: underline; / Подчеркивание при наведении /
}</string>
</property>
<property name=“text”>
<string>Зарегистрироваться</string>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item row=“1” column=“0”>
<spacer name=“horizontalSpacer_2”>
<property name=“orientation”>
<enum>Qt::Horizontal</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row=“1” column=“2”>
<spacer name=“horizontalSpacer”>
<property name=“orientation”>
<enum>Qt::Horizontal</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row=“2” column=“1”>
<spacer name=“verticalSpacer_2”>
<property name=“orientation”>
<enum>Qt::Vertical</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row=“0” column=“1”>
<spacer name=“verticalSpacer”>
<property name=“orientation”>
<enum>Qt::Vertical</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
</widget>
<resources/>
<connections/>
</ui>
Код с регистрацией
<?xml version=“1.0” encoding=“UTF-8”?>
<ui version=“4.0”>
<class>Registration</class>
<widget class=“QMainWindow” name=“Registration”>
<property name=“geometry”>
<rect>
<x>0</x>
<y>0</y>
<width>800</width>
<height>600</height>
</rect>
</property>
<property name=“windowTitle”>
<string>MainWindow</string>
</property>
<property name=“styleSheet”>
<string notr=“true”>background-color: rgb(0, 196, 255);</string>
</property>
<widget class=“QWidget” name=“centralwidget”>
<layout class=“QGridLayout” name=“gridLayout”>
<item row=“1” column=“1”>
<widget class=“QWidget” name=“widget” native=“true”>
<property name=“minimumSize”>
<size>
<width>400</width>
<height>400</height>
</size>
</property>
<property name=“maximumSize”>
<size>
<width>400</width>
<height>400</height>
</size>
</property>
<property name=“styleSheet”>
<string notr=“true”>QWidget {
background-color: rgb(255, 255, 255);
border-radius: 15px;
}
</string>
</property>
<widget class=“QWidget” name=“layoutWidget”>
<property name=“geometry”>
<rect>
<x>60</x>
<y>40</y>
<width>281</width>
<height>311</height>
</rect>
</property>
<layout class=“QVBoxLayout” name=“verticalLayout_2”>
<item>
<widget class=“QLabel” name=“label”>
<property name=“minimumSize”>
<size>
<width>50</width>
<height>49</height>
</size>
</property>
<property name=“maximumSize”>
<size>
<width>16777215</width>
<height>50</height>
</size>
</property>
<property name=“font”>
<font>
<pointsize>16</pointsize>
<weight>75</weight>
<italic>false</italic>
<bold>true</bold>
<underline>false</underline>
</font>
</property>
<property name=“layoutDirection”>
<enum>Qt::LeftToRight</enum>
</property>
<property name=“text”>
<string>Регистрация</string>
</property>
<property name=“alignment”>
<set>Qt::AlignCenter</set>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit_4”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; / Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Электронная почта</string>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; / Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Логин</string>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit_2”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; / Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Пароль</string>
</property>
</widget>
</item>
<item>
<widget class=“QLineEdit” name=“lineEdit_3”>
<property name=“styleSheet”>
<string notr=“true”>QLineEdit {
border: 2px solid darkgray;
border-radius: 15px;
padding: 0 8px;
background: white;
selection-background-color: lightblue;
width: 30px;
height: 30px;
}

QLineEdit:focus {
border: 2px solid gray; / Цвет границы станет темнее при фокусе /
}</string>
</property>
<property name=“placeholderText”>
<string>Повторите пароль</string>
</property>
</widget>
</item>
<item alignment=“Qt::AlignHCenter”>
<widget class=“QPushButton” name=“pushButton”>
<property name=“font”>
<font>
<pointsize>10</pointsize>
<weight>75</weight>
<bold>true</bold>
</font>
</property>
<property name=“styleSheet”>
<string notr=“true”>QPushButton {
color: rgb(255, 255, 255);
width: 120px;
height: 30px;
border-radius: 10px; / Радиус скругления краев /
background-color: rgb(0, 196, 255); / Фон кнопки /
}

QPushButton:hover {
background-color: darkgray; / Фон кнопки при наведении мыши /
}

QPushButton:pressed {
background-color: darkgray; / Фон кнопки при нажатии */
}</string>
</property>
<property name=“text”>
<string>Сохранить</string>
</property>
<property name=“iconSize”>
<size>
<width>16</width>
<height>16</height>
</size>
</property>
</widget>
</item>
</layout>
</widget>
</widget>
</item>
<item row=“2” column=“1”>
<spacer name=“verticalSpacer_2”>
<property name=“orientation”>
<enum>Qt::Vertical</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>20</width>
<height>40</height>
</size>
</property>
</spacer>
</item>
<item row=“0” column=“1”>
<spacer name=“verticalSpacer”>
<property name=“orientation”>
<enum>Qt::Vertical</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>20</width>
<height>72</height>
</size>
</property>
</spacer>
</item>
<item row=“1” column=“0”>
<spacer name=“horizontalSpacer”>
<property name=“orientation”>
<enum>Qt::Horizontal</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row=“1” column=“2”>
<spacer name=“horizontalSpacer_2”>
<property name=“orientation”>
<enum>Qt::Horizontal</enum>
</property>
<property name=“sizeHint” stdset=“0”>
<size>
<width>40</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
</layout>
</widget>
<widget class=“QStatusBar” name=“statusbar”/>
</widget>
<resources/>
<connections/>
</ui>
использовать pyqt6