j'essaye de créer pour test une fenêtre MainWindow que j'ai subdivise en deux blocs (bloc_right et bloc_left):
bloc_left est un widgte QFrame vertical qui contient deux boutons QPushbutton : bouton1 et bouton2
bloc_left est un widget QFrame qui doit normalement contenir deux widgtes QFrame "frame1" et " frame2"
je souhaite que lorque :
* je clique sur le bouton , c'est la frame1 qui s'affiche avec son contenu.
* si je clique sur le bouton2, la frame1 disparait et c'est la fram2 qui s’affiche avec son contenu
j'ai utiliser deux fichiers (index.py) et ( main.ui)
index.py :
# PyQT5 :
from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtGui import *
from PyQt5.uic import loadUiType
# import os :
import os
from os import path
import sys
# import UI_File :
FORM_CLASS,_ = loadUiType(path.join(path.dirname(__file__),"main.ui"))
#Initiate UI_File :
class MainApp(QMainWindow,FORM_CLASS) :
def __init__(self,parent=None) :
super(MainApp,self).__init__(parent)
QMainWindow.__init__(self)
self.setupUi(self)
self.mainUi()
self.pushButton.clicked.connect(self.bouton1)
self.pushButton_2.clicked.connect(self.bouton2)
def mainUi(self):
self.setWindowTitle("window for test")
def bouton1(self) :
# hide the frame and its contents
self.frame_3.hide()
# show the frame and its contents
self.frame_4.show()
def bouton2(self) :
# hide the frame and its contents
self.frame_4.hide()
# show the frame and its contents
self.frame_3.show()
def main():
app=QApplication(sys.argv)
window=MainApp()
window.show()
app.exec_()# infinite loop
if __name__=='__main__' :
main()
y a t'il de proposition pour me guider a realiser ceci Merci
comment afficher/masquer des frames dans PyQt5
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.