Автоматический подгон размеров окна и виджетов, под разное разрешение экрана (PyQt5)
У меня имеется приложение написанное на python (с применением PyQt5). На моем мониторе (1366x768) все прекрасно видно. Если это же приложение запустить к примеру на другом компьютере с другим разрешением монитора, то ситуация уже чуть хуже. Подскажите пожалуйста как быть как :)
Код самого окна сделан через QtDesigner и .ui-файл конвертирован в .py-файл
login.py
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'C:\Users\User\Desktop\login.ui'
#
# Created by: PyQt5 UI code generator 5.15.7
#
# WARNING: Any manual changes made to this file will be lost when pyuic5 is
# run again. Do not edit this file unless you know what you are doing.
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(381, 260)
self.frame = QtWidgets.QFrame(Form)
self.frame.setGeometry(QtCore.QRect(10, 10, 361, 241))
self.frame.setStyleSheet("border-radius:10px;\n"
"background-color: rgb(68, 56, 72);")
self.frame.setFrameShape(QtWidgets.QFrame.StyledPanel)
self.frame.setFrameShadow(QtWidgets.QFrame.Raised)
self.frame.setObjectName("frame")
self.registrate = QtWidgets.QPushButton(self.frame)
self.registrate.setGeometry(QtCore.QRect(70, 150, 231, 21))
self.registrate.setStyleSheet("border-radius:10px;\n"
"background-color: rgb(170, 0, 255);\n"
"color:white;\n"
"")
self.registrate.setObjectName("registrate")
self.pushButton = QtWidgets.QPushButton(self.frame)
self.pushButton.setGeometry(QtCore.QRect(70, 120, 231, 21))
self.pushButton.setStyleSheet("border-radius:10px;\n"
"background-color: rgb(170, 0, 255);\n"
"color:white;\n"
"")
self.pushButton.setObjectName("pushButton")
self.closeButton = QtWidgets.QPushButton(self.frame)
self.closeButton.setGeometry(QtCore.QRect(330, 10, 22, 22))
self.closeButton.setStyleSheet("border-radius:10px;\n"
"background-color: rgb(170, 0, 255);\n"
"color:white;\n"
"")
self.closeButton.setObjectName("closeButton")
self.closeButton_2 = QtWidgets.QPushButton(self.frame)
self.closeButton_2.setGeometry(QtCore.QRect(300, 10, 22, 22))
self.closeButton_2.setStyleSheet("border-radius:10px;\n"
"background-color: rgb(170, 0, 255);\n"
"color:white;\n"
"")
self.closeButton_2.setObjectName("closeButton_2")
self.lineEdit = QtWidgets.QLineEdit(Form)
self.lineEdit.setGeometry(QtCore.QRect(80, 70, 231, 21))
self.lineEdit.setStyleSheet("border-radius:10px;\n"
"color: rgb(255, 255, 255);\n"
"background-color: rgb(100, 83, 106);\n"
"padding-left:10px;")
self.lineEdit.setObjectName("lineEdit")
self.lineEdit_2 = QtWidgets.QLineEdit(Form)
self.lineEdit_2.setGeometry(QtCore.QRect(80, 100, 231, 21))
self.lineEdit_2.setStyleSheet("border-radius:10px;\n"
"color: rgb(255, 255, 255);\n"
"background-color: rgb(100, 83, 106);\n"
"padding-left:10px;")
self.lineEdit_2.setEchoMode(QtWidgets.QLineEdit.Password)
self.lineEdit_2.setObjectName("lineEdit_2")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.registrate.setText(_translate("Form", "Зарегистрироваться"))
self.pushButton.setText(_translate("Form", "Авторизоваться"))
self.closeButton.setText(_translate("Form", "X"))
self.closeButton_2.setText(_translate("Form", "_"))
self.lineEdit.setPlaceholderText(_translate("Form", "Логин"))
self.lineEdit_2.setPlaceholderText(_translate("Form", "Пароль"))
