Example #1
0
    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)
Example #2
0
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)