Как в setObjectName добавить последовательное число?
Я создаю каждый раз при нажатии кнопки groupbox
def new(self):
self.groupBox_2 = QGroupBox(self.scrollAreaWidgetContents)
self.groupBox_2.setMinimumSize(QSize(411, 251))
self.groupBox_2.setMaximumSize(QSize(411, 251))
self.groupBox_2.setCheckable(False)
self.groupBox_2.setStyleSheet(
"border: 2px solid #FDD2BF;"
"border-radius: 10;")
self.groupBox_2.setObjectName("groupBox_2")
Как мне в setObjectName добавить переменную, которая будет увеличиваться на один?
Внизу написал как я себе это представляю, но как вы понимаете это не работает.
x += 1
...
self.groupBox_2.setObjectName("groupBox_{x}")
Ответы (1 шт):
Если вам действительно нужна помощь - опубликуйте минимально-воспроизводимый пример. Я вижу, что вы не правильно реализуете какую-то свою идею.
Сделать можно все, но поймите, что в цикле или как вы
пишите
'каждый раз при нажатии кнопки'
не делают экземпляр QGroupBox объектом класса
vvvv <--------------------- нет !!!
self.groupBox_2 = QGroupBox(self.scrollAreaWidgetContents)
я бы попробовал вам помочь, но вы почему-то упрямо не публикуете код.
А пока вот вам ответ на ваш вопрос, но помните, что использовать где-то в логике так:
self.groupBox_2.оbjectName()
у вас не получится, потому что там будет всегда последнее значение.
...
class Window(QMainWindow):
def __init__(self):
super().__init__()
self.x = 0
...
def new(self):
self.x += 1
self.groupBox_2.setObjectName(f"groupBox_{self.x}")
...