Kivy: Как получить выбранное значение из представления корзины - PullRequest
0 голосов
/ 21 сентября 2019

Я новичок в kivy developmentpement и все еще изучаю этот язык, на самом деле я работаю в очень простом приложении, я использую recycleview для извлечения данных из моей базы данных.

Моя проблема в том, как выбрать менязначение из этого recycleview и использовать его в другом методе (def ValidRangement) в классе Rangement.Я могу напечатать выбранное значение, но я не могу определить, что выбрано в моем определении ValidRangement.

спасибо за вашу помощь, ниже мой код:

main.py:

class Rangement(Screen):
    data_items = ListProperty([])

    def __init__(self, **kwargs):
        super(Rangement, self).__init__(**kwargs)
        self.ListLPN()

    def ListLPN(self):
        cursor.execute("""SELECT id, numlpn, sku, designation ,"EAN","UVC","UM", statut  FROM "Stock_stocksku" WHERE statut = 'En stock non rangé' """)
        rows = cursor.fetchall()

        # create data_items
        for row in rows:
            for col in row:
                self.data_items.append(col)

    def ValidRangement(self,test):
        if test == 1:
            sql_update_query = """Update "Stock_stocksku" set "statut" = %s where id = %s """
            cursor.execute(sql_update_query,("En stock rangé",test))
            connection.commit()

main.kv:

<Rangement>:
    name : 'rangement'

    GridLayout:
        cols:1
        rows:3
        BoxLayout:
            orientation : "vertical"
            size_hint_y: 0.09
            LabelB:
                text: "Liste des LPN à ranger"
                bcolor: hex('#f15a22')
        GridLayout:
            cols:1
            rows: 1
            BoxLayout:
                orientation: "vertical"

                GridLayout:
                    size_hint: 1, None
                    size_hint_y: None
                    height: 25
                    cols: 8

                    LabelB:
                        text: "N"
                    LabelB:
                        text: "LPN"
                    LabelB:
                        text: "SKU"
                    LabelB:
                        text: "Designation"
                    LabelB:
                        text: "EAN"
                    LabelB:
                        text: "UVC"
                    LabelB:
                        text: "UM"
                    LabelB:
                        text: "Statut"

                BoxLayout:
                    RecycleView:
                        viewclass: 'SelectableLabel'
                        data: [{'text': str(x)} for x in root.data_items]
                        SelectableRecycleGridLayout:
                            cols: 8
                            default_size: None, dp(26)
                            default_size_hint: 1, None
                            size_hint_y: None
                            height: self.minimum_height
                            orientation: 'vertical'
                            multiselect: True
                            touch_multiselect: True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...