79180362

Date: 2024-11-12 08:50:18
Score: 3
Natty:
Report link

If you are looking to set a default value activ, it seems like my code is working :

                elif field_type.startswith("picklist"):
                empty_space_before = MDBoxLayout(size_hint_y=None, height=3)
                if settings["column"] == "left":
                    self.sub_column_1.add_widget(empty_space_before)
                else:
                    self.sub_column_2.add_widget(empty_space_before)

                options = field_type.split("(")[1].strip(")").split(",")
                default_value = settings.get("default", options[0])  # Use the first option if no default specified

                column_value = MDSegmentedButton(size_hint=(1, None), height="30dp", pos_hint={'center_x': 0.5})
                default_segment = None
                for option in options:
                    segment = MDSegmentedButtonItem(MDSegmentButtonLabel(text=option.strip()))
                    if option.strip() == default_value:
                        segment.active = True
                        print(f"Default value for {column_name}: {option.strip()}")
                    column_value.add_widget(segment)

                # Ajouter la picklist à gauche et le texte explicatif à droite
                row_layout.add_widget(column_value)
                if settings["column"] == "left":
                    self.sub_column_1.add_widget(column_label)
                    empty_space_after = MDBoxLayout(size_hint_y=None, height=5)
                    self.sub_column_1.add_widget(empty_space_after)
                else:
                    self.sub_column_2.add_widget(column_label)
                    empty_space_after = MDBoxLayout(size_hint_y=None, height=5)
                    self.sub_column_2.add_widget(empty_space_after)

            # Ajouter la ligne au bloc de saisie en fonction de la colonne définie
            if settings["column"] == "left":
                self.sub_column_1.add_widget(row_layout)
            else:
                self.sub_column_2.add_widget(row_layout)

            # Stocker les champs de saisie pour les récupérer plus tard
            self.input_fields[column_name] = column_value

I tried workarounds first since segment.state didn't seem to do what I wanted but a simple segment.active = True seemed to fix the problem ?

Reasons:
  • RegEx Blacklisted phrase (1.5): fix the problem ?
  • Long answer (-1):
  • Has code block (-0.5):
  • Ends in question mark (2):
  • Low reputation (1):
Posted by: Guillaume.NT