PyQt5 setCentralWidget' a dair bir soru

from PyQt5.QtWidgets import *
import sys


class MainWindow(QMainWindow):
    def __init__(self):
        super().__init__()
        self.setUI()

    def setUI(self):
        self.widget = QWidget(self)
        self.setCentralWidget(self.widget)

        self.btn = QPushButton("Aç",self)
        self.btn.clicked.connect(self.degis)

        self.label = QLabel("Layout1", self)

        v1 = QVBoxLayout(self)
        v1.addWidget(self.label)
        v1.addWidget(self.btn)

        self.widget.setLayout(v1)


    def degis(self):
        self.btn.hide()
        self.label.hide()


        v2 = QVBoxLayout(self)

        self.label2 = QLabel("layout2",self)

        self.btn2 = QPushButton("degis",self)
        self.btn2.clicked.connect(self.degis2)

        v2.addWidget(self.label2)
        v2.addWidget(self.btn2)
        
        self.widget.setLayout(v2)


    def degis2(self):
        pass


app = QApplication(sys.argv)
pencere = MainWindow()
pencere.show()
app.exec_()

Bu kodlarda yapmak istediğim şey şu .Butona basınca self.label2 nin ve self.btn2 nin gelmesi ama butona basınca bunlar gelmiyor.nerde hata var acaba?Şimdiden teşekkürler.