как установить рамку в верхней левой и верхней правой половине экрана высоты? - PullRequest
0 голосов
/ 13 июля 2020

Я хочу установить рамку в верхней левой и верхней правой половине экрана высоты следующим образом.

введите описание изображения здесь

Я пытаюсь установить в этом коде.

web1 = QWebEngineView()
x=web1.width()*0.5
y=web1.height()*0.5
web1.setFixedSize(x,y)
web1.setGeometry(0,0, x, y)
web1.setWindowFlag(Qt.FramelessWindowHint)
web1.load(QUrl("https://www.google.com"))
web1.show()

web2 = QWebEngineView()
x=web2.width()
y=web2.height()
web2.setFixedSize(x,y)
web2.setGeometry(0,0, x, y)
web2.setWindowFlag(Qt.FramelessWindowHint)
web2.load(QUrl("https://www.facebook.com"))
web2.show()

Он все еще отображается в верхнем левом углу. Как исправить?

1 Ответ

1 голос
/ 13 июля 2020

Если вы хотите разместить элемент (QWebEngineView) по отношению к другому (экрану), тогда вы должны взять обе геометрии в качестве ссылки, но вы используете только первую, и это причина проблемы.

Решение:

from PyQt5 import QtCore, QtGui, QtWidgets, QtWebEngineWidgets


if __name__ == "__main__":
    import sys

    app = QtWidgets.QApplication(sys.argv)

    rect_screen = app.primaryScreen().availableGeometry()

    web1 = QtWebEngineWidgets.QWebEngineView()
    web1.setFixedSize(0.5 * rect_screen.size())
    web1.setWindowFlag(QtCore.Qt.FramelessWindowHint)
    web1.setGeometry(
        QtWidgets.QStyle.alignedRect(
            QtCore.Qt.LeftToRight,
            QtCore.Qt.AlignLeft | QtCore.Qt.AlignTop,
            web1.size(),
            rect_screen,
        )
    )
    web1.load(QtCore.QUrl("https://www.google.com"))
    web1.show()

    web2 = QtWebEngineWidgets.QWebEngineView()
    web2.setFixedSize(0.5 * rect_screen.size())
    web2.setWindowFlag(QtCore.Qt.FramelessWindowHint)
    web2.setGeometry(
        QtWidgets.QStyle.alignedRect(
            QtCore.Qt.LeftToRight,
            QtCore.Qt.AlignRight | QtCore.Qt.AlignTop,
            web2.size(),
            rect_screen,
        )
    )
    web2.load(QtCore.QUrl("https://www.facebook.com"))
    web2.show()

    sys.exit(app.exec_())
...