from kivy.app import App
from kivy.lang import Builder
kv="""
FloatLayout:
Button:
text:"lab"
id:lbl
size_hint:(0.8,0.6)
pos_hint:{"x":.1,"y":.3}
font_size: sp(33)
Button:
text:"İleri"
size_hint:(0.4,0.2)
pos_hint:{"x":.1,"y":.1}
on_press:app.next()
Button:
text:"Geri"
size_hint:(0.4,0.2)
pos_hint:{"x":.5,"y":.1}
on_press:app.previous()
"""
liste=["as","bejj","ke","yt","tr"]
class uygulama(App):
def build(self):
return Builder.load_string(kv)
def next(self):
self.root.ids.lbl.text="%s"% liste [0]#Burdaki sıfır listenin ilk keimesini alıyor
def previous(self):
self.root.ids.lbl.text="%s"% liste[1] #Burdaki bir sayısı listenin
ikinci keimesini alıyor
uygulama().run()
İleri düğmesine bastımı listenin içindeki kelimeleri butonda teker teker nasıl gösterebilirim.
Bu şekilde yaptım.
from kivy.app import App
from kivy.lang import Builder
from kivy.properties import NumericProperty
kv="""
FloatLayout:
Button:
text: str(app.bas)
id:lbl
size_hint:(0.8,0.6)
pos_hint:{"x":.1,"y":.3}
font_size: sp(33)
Button:
text:"İleri"
size_hint:(0.4,0.2)
pos_hint:{"x":.1,"y":.1}
on_press: app.next()
Button:
text:"Geri"
size_hint:(0.4,0.2)
pos_hint:{"x":.5,"y":.1}
on_press: app.previous()
"""
liste=["a","b","c","d","e","f","g"]
class uygulama(App):
sayac = NumericProperty(0)
bas = liste[0]
def build(self):
return Builder.load_string(kv)
def next(self):
self.sayac += 1
if self.sayac == len(liste):
self.root.ids.lbl.text = str(liste[0])
self.sayac = 0
else:
self.root.ids.lbl.text = "%s" % liste[self.sayac]
def previous(self):
self.sayac -= 1
if self.sayac == -(len(liste)):
self.root.ids.lbl.text = str(liste[0])
self.sayac = 0
else:
self.root.ids.lbl.text = "%s" % liste[self.sayac]
uygulama().run()
1 Beğeni
Demekki NumericProperty kullanmamız gerekirmiş.teşekkürler.
1 Beğeni