ボタンの位置をリストのインデックスに関連付けようとしています。私は多くの名前を含む1つのリストと、多くの数値を含む別のリストを持っています。私はそのボタンの位置(または他のパラメータ)を取得し、そのボタンの位置をリストのインデックスに関連付ける関数を作成したいと思います。位置としての変数関数
たとえば、最初のボタンをクリックすると、関数はリストの最初の名前を取り、もう一方のリストの最初の数値を取ります。だから最後のボタンをクリックし、関数はリストの最後の名前と最後の数値を別のリストに取ります。
私は値として多くの機能を作成しましたが、これを行うにはもっと知的な方法があると思います。あなたのケースでは
の.py
n = ["a", "b", "c", "d"]
v = [10, 20, 30, 40]
x = 0
y = []
i = 0
class PrimeiroScreen(Screen):
def __init__(self, **kwargs):
self.name = 'um'
super(Screen,self).__init__(**kwargs)
def fc1(self, *args):#I don't know how to make i variable as button position
global x
x = x + v[i]
y.append(n[i])
print (x)
print (y)
.kv
<PrimeiroScreen>:
StackLayout:
orientation: 'tb-lr'
GridLayout:
cols: 2
spacing: 10, 10
#padding: 0, 0
size_hint: (1,.8)
Button:
text: "[b]Btn1[/b]"
markup: True
on_press: root.fc1()
Button:
text: "[b]Btn2[/b]"
font_size: '20dp'
markup: True
on_press: root.fc1()
Button:
text: "[b]Btn3[/b]"
font_size: '20dp'
markup: True
on_press: root.fc1()
Button:
text: "[b]Btn4[/b]"
font_size: '20dp'
markup: True
on_press: root.fc1()
Observableパターンを使用する必要があります。私が覚えているように、kivyはすでに観測されたコレクションの基本型を持っています。 – pylover
私はこれが何であるか分かりません。私はどこの情報を見つけることができるか知っていますか? – victorcd