如何在python中使用pyqt5显示2个按钮和2个标签?

如何在python中使用pyqt5显示2个按钮和2个标签?,python,pyqt5,qpushbutton,qvboxlayout,Python,Pyqt5,Qpushbutton,Qvboxlayout,我想在QWidget窗口中显示2个按钮和2个标签,其中2个按钮位于同一水平布局上。每个按钮下面都有标签 为此,我使用了以下方法: QHBoxLayout QVBoxLayout 当我运行脚本时,它不会显示所有创建的小部件 它显示1个按钮和1个标签 代码: 如果从terminal/CMD运行应用程序,则会出现以下错误: QWidget::setLayout: Attempting to set QLayout "" on QWidget "", when

我想在QWidget窗口中显示2个按钮和2个标签,其中2个按钮位于同一水平布局上。每个按钮下面都有标签

为此,我使用了以下方法:

  • QHBoxLayout
  • QVBoxLayout
当我运行脚本时,它不会显示所有创建的小部件

它显示1个按钮和1个标签

代码:
如果从terminal/CMD运行应用程序,则会出现以下错误:

QWidget::setLayout: Attempting to set QLayout "" on QWidget "", when the QLayout already has a parent
试试看:

import sys
from PyQt5 import QtWidgets

def basicWindow():
    app = QtWidgets.QApplication(sys.argv)
    
    windowExample = QtWidgets.QWidget()
    buttonA = QtWidgets.QPushButton('Click!')
    labelA = QtWidgets.QLabel('Label Example')
    buttonb = QtWidgets.QPushButton('Click 2!')
    labelb = QtWidgets.QLabel('Label Example 2')
    

    v_box_H = QtWidgets.QHBoxLayout(windowExample)    # + windowExample
    # v_box_H2 = QtWidgets.QHBoxLayout()

    v_box = QtWidgets.QVBoxLayout()
    v_box.addWidget(buttonA)
    v_box.addWidget(labelA)

    v_box2 = QtWidgets.QVBoxLayout()
    v_box2.addWidget(buttonb)
    v_box2.addWidget(labelb)
    
    v_box_H.addLayout(v_box)
    v_box_H.addLayout(v_box2)                          # +++

#    windowExample.setLayout(v_box)                    # -
#    windowExample.setLayout(v_box2)                   # -

    windowExample.setWindowTitle('PyQt5 Lesson 4')
    windowExample.show()

    sys.exit(app.exec_())

basicWindow()

import sys
from PyQt5 import QtWidgets

def basicWindow():
    app = QtWidgets.QApplication(sys.argv)
    
    windowExample = QtWidgets.QWidget()
    buttonA = QtWidgets.QPushButton('Click!')
    labelA = QtWidgets.QLabel('Label Example')
    buttonb = QtWidgets.QPushButton('Click 2!')
    labelb = QtWidgets.QLabel('Label Example 2')
    

    v_box_H = QtWidgets.QHBoxLayout(windowExample)    # + windowExample
    # v_box_H2 = QtWidgets.QHBoxLayout()

    v_box = QtWidgets.QVBoxLayout()
    v_box.addWidget(buttonA)
    v_box.addWidget(labelA)

    v_box2 = QtWidgets.QVBoxLayout()
    v_box2.addWidget(buttonb)
    v_box2.addWidget(labelb)
    
    v_box_H.addLayout(v_box)
    v_box_H.addLayout(v_box2)                          # +++

#    windowExample.setLayout(v_box)                    # -
#    windowExample.setLayout(v_box2)                   # -

    windowExample.setWindowTitle('PyQt5 Lesson 4')
    windowExample.show()

    sys.exit(app.exec_())

basicWindow()