0
class MyWindow(QMainWindow, form_class):
    def __init__(self):
        super().__init__()
        self.setupUi(self)
        self.btn1.clicked.connect(self.btn1_clicked)
        #self.btn1.clicked.connect(self.popup)
        self.setWindowTitle('WOD Program')


    layout = QHBoxLayout()
    muscles = ['Pectoralis', 'Deltoid', 'Biceps', 'Triceps', 'Latissius Dorsi', 
    'Lumbar Muscles', 'Quadriceps','Glutes', 'Abdominals']

        inputmuscles=[]

        self.checkBox_2.stateChanged.connect(lambda: self.btnstate(self.checkBox_2))
        self.checkBox_3.stateChanged.connect(lambda: self.btnstate(self.checkBox_3))
        self.checkBox_4.stateChanged.connect(lambda: self.btnstate(self.checkBox_4))
        self.checkBox_5.stateChanged.connect(lambda: self.btnstate(self.checkBox_5))
        self.checkBox_6.stateChanged.connect(lambda: self.btnstate(self.checkBox_6))
        self.checkBox_7.stateChanged.connect(lambda: self.btnstate(self.checkBox_7))
        self.checkBox_8.stateChanged.connect(lambda: self.btnstate(self.checkBox_8))
        self.checkBox_9.stateChanged.connect(lambda: self.btnstate(self.checkBox_9))
        self.checkBox_10.stateChanged.connect(lambda: self.btnstate(self.checkBox_10))


    def btnstate(self, b):
        muscles = ['Pectoralis', 'Deltoid', 'Biceps', 'Triceps', 'Latissius Dorsi', 'Lumbar Muscles', 'Quadriceps',
                   'Glutes', 'Abdominals']
        for i in muscles:
            if b.text() == i:
                if b.isChecked() == True:
                    preinputmuscles=i

    def get_muscles_selected(self):
        muscles_selected = []
        l = [self.checkBox_2, self.checkBox_3, self.checkBox_4, self.checkBox_5, self.checkBox_6, self.checkBox_7,
         self.checkBox_8, self.checkBox_9, self.checkBox_10]
        for e in l:
            if e.isChecked():
                muscles_selected.append(e.text())
        print(muscles_selected)
        return muscles_selected

    **inputmuscles = self.get_muscles_selected()????**

    WOD = []
    for i in inputmuscles:
        for key in muscleEngaged:
            if i in muscleEngaged[key]:
                WOD.append(key)
    WOD = list(set(WOD)) 

    def btn1_clicked(self):
        QMessageBox.about(self, "message", "Here are random exercises")

    def popup(self):
        self.dialog=myPopupDialog()
        self.dialog.exec_()



if __name__ == "__main__":
    app = QApplication(sys.argv)
    myWindow = MyWindow()
    myWindow.show()
    app.exec_()

I want to get input outside def btnstate.

And I want to get a vacant list. Then when I click the check box, I wanna append things that I checked. But I can't draw out the value in the function btnstate. Please help me.

I uploaded all codes. Because of my first coding, it seems like messy, dirty. But I'm ready for accepting all kinds of editting and advising.

Inong
  • 1
  • 2

0 Answers0