Вы можете использовать QGraphicsView
и встроить в него свой основной виджет. Но все ваше приложение должно применять один и тот же фактор ко всем виджетам.
A QGraphicsView
позволяет увеличить.
Например:
class Widget(QWidget):
def __init__(self, parent=None):
super().__init__(parent)
self.setFixedSize(320, 420)
layout = QFormLayout(self)
btn = QPushButton("Button")
btn.setFixedSize(100, 40)
lineEdit = QLineEdit("Button")
btn.setFixedSize(150, 20)
layout.addRow("A button", btn)
layout.addRow("A Line Edit", lineEdit)
if __name__ == '__main__':
import sys
app = QApplication(sys.argv)
w = Widget()
view = QGraphicsView()
scene = QGraphicsScene(0, 0, 1000, 1000)
view.setFixedSize(320 * 2, 420 * 2)
view.setScene(scene)
view.scale(2, 2)
proxy = scene.addWidget(w)
view.centerOn(proxy)
#w = Widget()
#w.show()
view.show()
sys.exit(app.exec_())
Это самый быстрый способ продолжить. Наилучшим способом будет рефакторинг всего вашего кода, чтобы он не зависел от разрешения (например, с помощью класса конфигурации).