Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 18, 2019 20:29:48

Alberto
Зарегистрирован: 2017-08-20
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

pyqt5 переименование кнопок.

Здравствуйте уважаемые форумчане.

Не пинайте пожалуйста сильно за мой вопрос.
Через setText(“Name”) можно переименоввать только отдельную кнопку.

 import sys
from PyQt5.QtWidgets import QMainWindow, QPushButton, QApplication
class Example(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        self.btn1 = QPushButton("Button 1", self)
        self.btn1.move(10, 30)
        self.btn2 = QPushButton("Button 2", self)
        self.btn2.move(115, 30)
        self.btn3 = QPushButton("Button 3", self)
        self.btn3.move(220, 30)
        self.btn4 = QPushButton("Ren", self)
        self.btn4.move(115, 80)
        self.btn4.clicked.connect(self.buttonClicked)
        self.setGeometry(300, 300, 330, 150)
        self.setWindowTitle('buttons')
        self.show()
    def buttonClicked(self):
        self.btn1.setText("Name1")
        self.btn2.setText("Name2")
        self.btn3.setText("Name3")
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())

Как через цикл переименовать сразу несколько кнопок?

Офлайн

#2 Ноя. 19, 2019 09:36:08

PEHDOM
Зарегистрирован: 2016-11-28
Сообщения: 2196
Репутация: +  294  -
Профиль   Отправить e-mail  

pyqt5 переименование кнопок.

  import sys
from PyQt5.QtWidgets import QMainWindow, QPushButton, QApplication
class Example(QMainWindow):
    def __init__(self):
        super().__init__()
        self.initUI()
    def initUI(self):
        self._btns = []
        for i in range (3):
            self._btns.append(QPushButton("Button {}".format(i+1) , self))
            self._btns[i].move(i+10+i*100, 30)
        
        self.btn_rename = QPushButton("Ren", self)
        self.btn_rename.move(115, 80)
        self.btn_rename.clicked.connect(self.buttonClicked)
        self.setGeometry(300, 300, 330, 150)
        self.setWindowTitle('buttons')
        self.show()
    def buttonClicked(self):
        for i, btn in enumerate(self._btns):
            btn.setText("Name{}".format(i+1))
if __name__ == '__main__':
    app = QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())



==============================
Помещайте код в теги:
[code python][/code]
Бериегите свое и чужое время.

Офлайн

#3 Ноя. 19, 2019 18:27:36

Alberto
Зарегистрирован: 2017-08-20
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

pyqt5 переименование кнопок.

PEHDOM спасибо.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version