Je suis en train de concevoir une application utilisant PyQt qui gérera plusieurs instances de Selenium. Chaque instance a une QFrame avec des informations et des contrôles uniques et peut être parcourue à partir de la fenêtre principale.PyQt - Gestion des onglets depuis la classe externe
class Instance(QFrame):
def __init__(self):
super().__init__()
self.username = "whatever"
...
self.startButton = QPushButton('Start')
self.startButton.clicked.connect(lambda: self.engineStart())
self.exitButton = QPushButton('Exit')
self.exitButton.clicked.connect(lambda: self.engineExit())
...
Comment ça ressemble
Les utilisateurs doivent être en mesure de créer et supprimer des instances à volonté.
La création d'une tabulation ne pose aucun problème. J'ai un "+" bouton défini comme . Il est connecté à une méthode simple pour ajouter l'onglet.
class App(QFrame):
def __init__(self):
...
def addNewTab(self):
t = Instance()
self.tabs.addTab(t, t.username)
Le problème est, comment puis-je utiliser le bouton « Exit » de la classe instance « à l'intérieur » pour supprimer les onglets qui sont gérés de la classe « en dehors » de la fenêtre principale? Je besoin d'un moyen d'appeler removeTab()
'RemoveTab() 'a besoin d'un index, où décidez-vous de l'index? – eyllanesc