Ich habe ein Problem beim Zuweisen von Aktionen zu den Schaltflächen, die ich in einem Raster in kivy eingefügt habe. Jede Hilfe wäre willkommen.Kivy: Zuweisen von Aktionen/Klassifizieren von Schaltflächen im Raster
Ich bin neu in allen Dingen Codierung, aber ich habe versucht, dies auszuarbeiten. Ich habe versucht, der Schaltfläche einen Namen zuzuweisen, aber es funktioniert nicht, weil die Funktion 'on_press' nicht für eine Zeichenkette, sondern nur für eine Schaltfläche funktioniert. Gibt es eine Möglichkeit, meine Saite als Knopf zu klassifizieren oder mache ich alles falsch? Ich möchte, dass jede Taste eine andere Aktion ausführt, damit sie nicht als dieselbe klassifiziert werden kann.
Hier ist mein Code:
import kivy
kivy.require('1.10.0')
from kivy.uix.gridlayout import GridLayout
from kivy.app import App
from kivy.core.window import Window
from kivy.uix.button import Button
class MyApp(App):
def build(self):
def callback(instance):
print('The button 1 is being pressed' % instance.text)
# test 1: I dont think this works because it doesn't work with the grid structure but I tried it anyways
# btn1 = Button(background_color=blue, text='a', size_hint_x=None, width=butw)
# test 2: I don't think it works because it is not classified as a button, but a string.
# btn1 = "layout.add_widget(Button(background_color=blue, text='a', size_hint_x=None, width=butw))"
btn1.bind(on_press=callback)
layout = GridLayout(cols=1, rows=28, row_force_default=True, row_default_height=buth)
layout.add_widget(Button(background_color=blue, text='a', size_hint_x=None, width=butw))
layout.add_widget(Button(background_color=blue2, text='b', size_hint_x=None, width=butw))
layout.add_widget(Button(background_color=blue, text='c', size_hint_x=None, width=butw))
# cont.
return layout
MyApp().run()
Danke, Ryan