base-station/robotviewPage/robotView.py
2021-11-07 11:48:26 -05:00

90 lines
3.0 KiB
Python

from PyQt5 import QtWidgets, QtGui, QtCore
from PyQt5.QtWidgets import QApplication, QMainWindow, QWidget, QFormLayout, QHBoxLayout, QVBoxLayout, QGroupBox, QLabel, QPushButton, QScrollArea
from PyQt5.QtGui import QFont
from PyQt5.QtCore import Qt, QRect
import sys
class MyWindow(QWidget):
def __init__(self):
super(MyWindow, self).__init__()
self.resize(812, 627)
self.setWindowTitle("Base Station")
self.initUI()
def initUI(self):
self.setStyleSheet("background:rgb(41, 50, 65)")
columnLayout = QVBoxLayout()
formLayout = QFormLayout()
groupBox = QGroupBox()
upperColumn = QVBoxLayout()
label_1 = QLabel("Camera")
label_1.setFont(QFont("Roboto", 18))
label_1.setAlignment(Qt.AlignCenter)
label_1.setStyleSheet("color: rgb(224, 251, 252);background:rgb(61,90,128)")
camera = QLabel()
camera.setFixedHeight(272)
camera.setStyleSheet("background:rgb(61,90,128)")
upperColumn.addWidget(label_1)
upperColumn.addStretch()
upperColumn.addWidget(camera)
upperColumn.setSpacing(0)
self.logs = []
title = QLabel("Logs")
title.setFont(QFont("Roboto", 18))
title.setStyleSheet("color:rgb(224, 251, 252)")
title.setAlignment(Qt.AlignCenter)
formLayout.addRow(title)
for i in range(20):
b1 = QPushButton("Info")
b1.setStyleSheet("background:rgb(152, 193, 217)")
self.logs.append(b1)
# self.logs[i].clicked.connect(self.getInfo(i))
formLayout.addRow(self.logs[i])
groupBox.setLayout(formLayout)
scroll = QScrollArea()
scroll.setWidget(groupBox)
scroll.setWidgetResizable(True)
scroll.setFixedHeight(300)
scroll.setFixedWidth(320)
scroll.setStyleSheet("background:rgb(61,90,128)")
columnLayout.addLayout(upperColumn)
columnLayout.addWidget(scroll)
columns2Layout = QVBoxLayout()
label_2 = QLabel("Route Planning")
label_2.setFont(QFont("Roboto", 18))
label_2.setAlignment(Qt.AlignCenter)
label_2.setStyleSheet("color: rgb(224, 251, 252);background:rgb(61,90,128)")
route = QLabel()
route.setFixedHeight(578)
route.setStyleSheet("background:rgb(61,90,128)")
columns2Layout.addWidget(label_2)
columns2Layout.addStretch()
columns2Layout.addWidget(route)
columns2Layout.setSpacing(0)
columns = QHBoxLayout()
columns.addLayout(columnLayout)
columns.addLayout(columns2Layout)
self.setLayout(columns)
# self.b1.clicked.connect(self.clicked)
def getInfo(self, label):
self.logs[label].setText("Hey! You clicked on this button!")
self.update(label)
def update(self, label):
self.logs[label].adjustSize()
if __name__ == "__main__":
app = QApplication(sys.argv)
win = MyWindow()
win.show()
sys.exit(app.exec_())