私はしばらくの間、Kivyフレームワークに苦労しています。私はオンラインで自分の問題への答えを見つけることができません。ラベルに関数変数を渡します。
私はmain.pyと.kvファイルの2つのファイルを持っています。 main.pyファイルにはBoxlayoutの中に関数があります。例えば
:あなたが見ることができるように
class Box(BoxLayout):
def change(self):
variable = 0
while variable < 10:
text = "Some text " + str(variable)
variable += 1
は、文字列変数「テキスト」があると、この変数は各ループに異なっています。
今、.kvファイルにはラベルがあります。たとえば は:
Box:
BoxLayout:
Button:
id: butt
text: ""
on_press: root.change()
Label:
id: label_text
私は、機能変更を()を実行するためのボタンを希望し、私はラベルに表示された「テキスト」変数の値を参照したいと思います。 ユーザーがボタンをクリックすると、ラベル上でテキストが変わるのが表示されます: 「一部のテキスト0」、「一部のテキスト1」、「一部のテキスト2」....「一部のテキスト9」
私は次のようにmain.pyファイルにラベルIDを使用しようとしました:(チェンジ関数内)
label = self.ids['label_text']
self.count = str(variable)
label.text = "Some text " + self.count
何もで終わります。 私は関数の最後に "return text"でこれを行うことができると思いますが、最後の "text"変数をループから渡したくありません。ループ中に変数が変化したときにラベルがテキストを変更したい。
助けてください!
ありがとうございます。これは私の問題を解決しましたが、これがどういう仕組みになっているかはまだ100%明らかではありません。あなたは良いkivyチュートリアルをお勧めできますか? – Maciejjy
@Maciejjyそれがうまくいけば、答えを受け入れて投票するのがいいでしょう:) これを受け取りましたか? https://kivy.org/docs/tutorials/pong.html – Juggernaut
もちろん。しかし、私は投票することはできません。 15人未満の担当者の場合は、ポストスコアを変更しないというメッセージが表示されます。 – Maciejjy