Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- from PySide2 import QtCore, QtWidgets
- from PySide2.QtWidgets import QLineEdit
- class PanelConnect(QtWidgets.QWidget):
- def __init__(self):
- self.panelWidget = QtWidgets.QWidget()
- self.gridLayout = QtWidgets.QGridLayout(self.panelWidget)
- self.hostLabel = QtWidgets.QLabel('Host: ')
- self.portLabel = QtWidgets.QLabel('Port: ')
- self.userLabel = QtWidgets.QLabel('User: ')
- self.passLabel = QtWidgets.QLabel('Pass: ')
- self.hostLine = QtWidgets.QLineEdit()
- self.portLine: QLineEdit = QtWidgets.QLineEdit()
- self.userLine = QtWidgets.QLineEdit()
- self.passLine = QtWidgets.QLineEdit()
- self.loginBut = QtWidgets.QPushButton('Login')
- self.gridLayout.addWidget(self.hostLabel, 0, 0)
- self.gridLayout.addWidget(self.hostLine, 0, 1)
- self.gridLayout.addWidget(self.portLabel, 0, 2)
- self.gridLayout.addWidget(self.portLine, 0, 3)
- self.gridLayout.addWidget(self.userLabel, 1, 0)
- self.gridLayout.addWidget(self.userLine, 1, 1)
- self.gridLayout.addWidget(self.passLabel, 2, 0)
- self.gridLayout.addWidget(self.passLine, 2, 1)
- self.gridLayout.addWidget(self.loginBut, 1, 2, 2, 3)
- self.panelWidget.setMaximumHeight(120)
- self.panelWidget.setObjectName('stylePanel')
- self.strStyle = str('#stylePanel {border: 1px solid #C0C0C0; border-radius: 10px;}'
- 'QLineEdit {border: 2px solid; border-radius: 5px; font-size: 16px; font-weight: bold;}'
- 'QLineEdit:focus {border: 2px solid #FFD700;}'
- 'QLabel {font-size: 16px; font-weight: bold;}'
- 'QPushButton {border: 2px solid #000000; border-radius: 10px;'
- 'background-color: #ffffff; font-size: 16px; font-weight: bold;}'
- 'QPushButton:pressed{background-color: qlineargradient(x1: 0, y1: 0, x2: 0, y2: 1,'
- 'stop: 0 #000000, stop: 0.5 #000000, stop: 0.51 #000000, stop: 1 #000000); color: #ffffff}'
- 'QPushButton:flat { border: none; }')
- self.panelWidget.setStyleSheet(self.strStyle)
- self.hostLine.setMinimumWidth(300)
- self.hostLine.setMinimumHeight(30)
- self.passLine.setMaximumWidth(300)
- self.passLine.setMinimumWidth(300)
- self.passLine.setMinimumHeight(30)
- self.userLine.setMaximumWidth(300)
- self.userLine.setMinimumWidth(300)
- self.userLine.setMinimumHeight(30)
- self.portLine.setMaximumWidth(100)
- self.portLine.setMinimumWidth(100)
- self.portLine.setMinimumHeight(30)
- self.loginBut.setMinimumHeight(60)
- self.loginBut.pressed.connect(self.animateHide())
- @QtCore.Slot()
- def animateHide(self):
- eff = QtWidgets.QGraphicsOpacityEffect(self.panelWidget)
- self.panelWidget.setGraphicsEffect(eff)
- self.animateBut = QtCore.QPropertyAnimation(eff, b'opacity')
- self.animateBut.setDuration(2500)
- self.animateBut.setStartValue(1)
- self.animateBut.setEndValue(0)
- self.animateBut.setEasingCurve(QtCore.QEasingCurve.OutBack)
- self.animateBut.start(QtCore.QPropertyAnimation.DeleteWhenStopped)
Add Comment
Please, Sign In to add comment