J'ai un QTabWidget
et je veux une propriété sur les différents onglets qui détient si l'onglet est persistante ou non (similaire aux onglets dans VSCode, où si vous ne double-cliquez sur un fichier, il ne sera pas persister dans l'éditeur)
J'ai jusqu'à présent. Je veux que la TabItem
's avec _persistent=False
pour être en italique et les autres à être en caractères normaux.
from PySide2 import QtWidgets, QtCore, QtGui
class TabItem(QtWidgets.QWidget):
def __init__(self, persistent=False):
super(TabItem, self).__init__()
self._persistent = persistent
self.setProperty('persistent', '0' if not persistent else '1')
class TabWidget(QtWidgets.QTabWidget):
def __init__(self):
super(TabWidget, self).__init__()
item1 = TabItem(persistent=False)
item2 = TabItem(persistent=True)
self.addTab(item1, 'FirstItem')
self.addTab(item2, 'SecondItem')
self.setStyleSheet("""
QTabBar::tab{
font: normal;
}
QTabBar::tab[persistent="0"]{
font: italic;
}
""")
if __name__ == '__main__':
import sys
app = QtWidgets.QApplication(sys.argv)
win = TabWidget()
win.show()
sys.exit(app.exec_())