Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Kivy Spinner: is any event triggered when a value is selected from the Spinner

I introduce a Spinner in my widget, and I want to perform some action every time I chose a different value from it.

Is it possible?

I only seem to get events on_press and on_release, but they are not triggered when a choice for a different value is made :-(

Best regards,

Bojan

like image 563
user2664344 Avatar asked Jul 30 '15 10:07

user2664344


2 Answers

Beacuse the spinner updates its text property every time attr:values are changes,
I would do someting like this:

    Spinner:        
      text: '<select>'
      values: ['White', 'Yellow', 'Red', 'Green']
      on_text: root.on_spinner_select(self.text)

In python code:

class RootWidget(BoxLayout):
  def on_spinner_select(self, text):
    print (text)
like image 166
Avi ba Avatar answered Oct 21 '22 15:10

Avi ba


you have to use on_text:

spinner:
       id: my_spinner
       values: ("Home", "bureau", "kitchen")
       on_text: if my_spinner.text == "Home": root.Home()
                elif my_spinner.text == "bureau": root.bureau()
                else: root.kitchen()

now in python:

def Home():
   "do your things"
def bureau():
   "do your things"
def kitchen():
   "do your things"
like image 23
Abd El Kodous Souissi Avatar answered Oct 21 '22 15:10

Abd El Kodous Souissi