def add_vertical_splitter(self, layout): splitter = QSplitter() layout.addWidget(splitter) # ADD LEFT left_widget = QWidget(splitter) left = QVBoxLayout(left_widget) # NORMAL let = QLineEdit('Line Edit With Text') left.layout().addWidget(let) #PLACEHOLDER let = QLineEdit() let.setPlaceholderText('This is placeholder text...') left.layout().addWidget(let) # DISABLED let = QLineEdit('Line Edit Disabled') let.setEnabled(False) left.layout().addWidget(let) # ADD RIGHT right_widget = QWidget(splitter) right = QGridLayout(right_widget) # GROUP BOX grp = QGroupBox("Group Box") right.layout().addWidget(grp) grp_layout = QGridLayout(grp) btn = QPushButton('Set Style') btn.pressed.connect(self.set_style) grp_layout.addWidget(btn)
class Ui_Form(object): def setupUi(self, Form): Form.setObjectName("Form") Form.setWindowFlags(Qt.WindowMinimizeButtonHint) #Form.resize(600, 500) Form.setFixedSize(600, 500) # Form.setWindowOpacity(0.95) # Form.setAttribute(Qt.WA_TranslucentBackground) # Form.setStyleSheet("background:white") self.tabWidget = QWidget(Form) self.tabWidget.setGeometry(QRect(10, 30, 550, 450)) self.gridLayoutWidget = QWidget(self.tabWidget) self.lineEdit = QLineEdit(self.tabWidget) # self.lineEdit.setGeometry(QRect(10, 1, 191, 32)) self.lineEdit.setObjectName("lineEdit") self.btnSearch = QPushButton(self.tabWidget) # self.btnSearch.setGeometry(QRect(210, 1, 88, 34)) self.btnSearch.setObjectName("btnSearch") self.btnSearch.setToolTip("Hit \"Search\" or \"Enter\"") self.btnRefresh = QPushButton(self.tabWidget) iconButton = QIcon() pixmapRefresh = QPixmap(os.path.join(dirname, "icons/refresh.png")) iconButton.addPixmap(pixmapRefresh, QIcon.Normal, QIcon.Off) self.btnRefresh.setIcon(iconButton) # self.btnRefresh.setIconSize(QSize(20,20)) self.btnRefresh.setToolTip("Refresh") self.textBrowser = QTextBrowser(self.tabWidget) self.textBrowser.setObjectName("textBrowser") # self.textBrowser.setGeometry(QRect(10, 120, 520, 300)) # City Label self.labelCity = QLabel(self.tabWidget) # self.labelCity.setGeometry(QRect(280,55,191,20)) self.labelCity.setObjectName("labelCity") # Image Label self.labelPixmap = QLabel(self.tabWidget) # self.labelPixmap.setGeometry(QRect(210,60,30,30)) self.labelPixmap.setObjectName("labelPixmap") # Temperature Label self.labelDegrees = QLabel(self.tabWidget) self.labelDegrees.setObjectName("labelDegrees") # Forecast Label self.labelForecast = QLabel(self.tabWidget) self.labelForecast.setObjectName("labelForecast") # Wind Label self.labelWind = QLabel(self.tabWidget) self.labelWind.setObjectName("labelWind") # Pressure Label self.labelPressure = QLabel(self.tabWidget) self.labelPressure.setObjectName("labelPressure") # YR Label self.labelYR = QLabel(self.tabWidget) self.labelYR.setObjectName("labelYR") self.labelYR.setText( "Weather forecast from Yr, delivered by the Norwegian Meteorological Institute and NRK" ) # Escape to exit label self.labelEsc = QLabel(self.tabWidget) self.labelEsc.setObjectName("labelEsc") self.labelEsc.setText("Press \"ESC\" to exit") self.retranslateUi(Form) QMetaObject.connectSlotsByName(Form) self.location_on_the_screen(Form) # ================ LAYOUT ================ # Layout arriba izquierda hboxTopLeft = QHBoxLayout() hboxTopLeft.setObjectName("hboxTopLeft") hboxTopLeft.addWidget(self.textBrowser) hboxTop = QHBoxLayout() # hboxTop.addStretch(1) hboxTop.addWidget(self.lineEdit) hboxTop.addWidget(self.btnSearch) hboxTop.addWidget(self.btnRefresh) hboxTop.setObjectName("hboxTop") hboxCity = QHBoxLayout() hboxCity.addWidget(self.labelCity) hboxCity.setAlignment(Qt.AlignCenter) hboxWeatherTop = QHBoxLayout() hboxWeatherTop.addWidget(self.labelPixmap) hboxWeatherTop.addWidget(self.labelDegrees) hboxWeatherTop.setAlignment(Qt.AlignCenter) hboxWeatherMiddle = QHBoxLayout() hboxWeatherMiddle.addWidget(self.labelForecast) hboxWeatherMiddle.setAlignment(Qt.AlignCenter) hboxWeatherBottom = QHBoxLayout() hboxWeatherBottom.addWidget(self.labelWind) hboxWeatherBottom.addWidget(self.labelPressure) hboxWeatherBottom.setAlignment(Qt.AlignCenter) vboxWeather = QVBoxLayout() vboxWeather.addLayout(hboxCity) vboxWeather.addLayout(hboxWeatherTop) vboxWeather.addLayout(hboxWeatherMiddle) vboxWeather.addLayout(hboxWeatherBottom) self.gridLayoutWidget.setGeometry(QRect(20, 5, 530, 430)) self.gridLayout1 = QGridLayout(self.gridLayoutWidget) self.gridLayout1.setContentsMargins(0, 0, 0, 0) self.gridLayout1.layout().setContentsMargins(0, 0, 0, 0) self.gridLayout1.addLayout(hboxTop, 0, 0) # self.gridLayout1.addWidget(self.labelCity, 1, 0, Qt.AlignCenter) self.gridLayout1.addLayout(vboxWeather, 1, 0, Qt.AlignCenter) self.gridLayout1.addWidget(self.textBrowser, 2, 0) self.gridLayout1.addWidget(self.labelYR, 4, 0) self.gridLayout1.addWidget(self.labelEsc, 5, 0) def retranslateUi(self, Form): _translate = QCoreApplication.translate Form.setWindowTitle(_translate("Form", "Pretty Simple Weather App")) self.btnSearch.setText(_translate("Form", "Search")) def location_on_the_screen(self, Form): #ag = QDesktopWidget().availableGeometry() sg = QDesktopWidget().screenGeometry() widget = Form.geometry() x = (sg.width() - widget.width()) / 2 y = (sg.height() - widget.height()) / 2 Form.move(x, y)