kv dosyasını yuklemeniz lazım.
Eger kv lang ı tek bir Scriptte kullanmak istiyorsaniz;
from kivy.lang import Builder
Builder.load_string(yukleyecegin_kv_stringi)
Ornek
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
kv = """
<main2>:
orientation: "vertical"
Button:
id: btn
Button:
text: "Merhaba Yaz"
on_press: root.bas(btn,"Merhaba") #btn adli degisken bizim btn idli Button sınıfımız,o yuzden bas fonksiyonuna boyle bir parametre verdim
"""
class main2(BoxLayout):
def bas(self, nesne, dgr):
nesne.text = dgr #buradaki nesne,yukarıdaki btn idli Button sınıfı icin,yani nesne burada btn idli Button sınıfı oluyor.iste bu sınıfın text niteligini burada degistirebiliyorum.
class main(App):
def build(self):
Builder.load_string(kv) #ayriyeten kv stringi yuklenmemis,onu bi yuklemelisiniz once.
return main2()
if __name__ == "__main__":
main().run()
Eger kv adlı yeni bir dosya olusturup bu dosyayı yuklemek isterseniz;
from kivy.lang import Builder
Builder.load_file("yukleyecegin_kv_dosyası") #Not: eger bu kv dosyası script dosyasıyla aynı dizinde degilse dizin belirtilmeli
Ornek:
from kivy.lang import Builder
Builder.load_string(yukleyecegin_kv_stringi)
Ornek:
benim_kv_dosyam.kv
<main2>:
orientation: "vertical"
Button:
id: btn
Button:
text: "Merhaba Yaz"
on_press: root.bas(btn,"Merhaba") #btn adli degisken bizim btn idli Button sınıfımız,o yuzden bas fonksiyonuna boyle bir parametre verdim
main.py
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.lang import Builder
class main2(BoxLayout):
def bas(self, nesne, dgr):
nesne.text = dgr #buradaki nesne,yukarıdaki btn idli Button sınıfı icin,yani nesne burada btn idli Button sınıfı oluyor.iste bu sınıfın text niteligini burada degistirebiliyorum.
class main(App):
def build(self):
Builder.load_file("benim_kv_dosyam.kv") #ayriyeten kv dosyası yuklenmemis,onu bi yuklemelisiniz once.
return main2()
if __name__ == "__main__":
main().run()
benim_kv_dosyam.kv adli dosya ile main.py adlı dosyanın aynı dizinde oldugunu varsayıyorum.
Kolay gelsin .