PyQt: есть ли лучший способ установить имя объекта в коде?Python

Программы на Python
Anonymous
PyQt: есть ли лучший способ установить имя объекта в коде?

Сообщение Anonymous »


Когда вы используете Qt_Designer или Qt_Creator для разработки формы, имя объекта для любого данного виджета всегда имеет какое-то значение. Но если вы создаете виджет в коде И вам понадобится имя объекта позже, вам придется назначить его явно. Итак, назначение виджета занимает как минимум две строки кода. Это кажется очень неэлегантным.

Пример:

button1 = QPushButton('button caption') # в этот момент имя объекта представляет собой пустую строку button1.setObjectName('button1') Если вам понадобится найти виджет позже (например, с помощью findChild), у вас должно быть установлено имя объекта, иначе вам не повезло.

Есть ли способ автоматически установить имя объекта без дополнительных строк кода? Я просмотрел Справочное руководство PyQt5 и не смог найти такой функции. Аналогичный вопрос был задан на Code Review, но ответа не получил. Две строки кода — это не конец света, но это кажется излишним. Каким-то образом мне пришлось назначить это имя дважды: один раз для Python (первая строка) и еще раз для Qt.

Вернуться в «Python»