0
私は2つのスライダを含む単純なKivyカスタムウィジェットを作成しようとしています。 画面がレンダリングされると、1つではなく2つのスライダが得られます。Kivyカスタムウィジェットが2回インスタンス化される
私は間違っていますか?
Main.kv:
ScreenManagement:
MainScreen:
<Button>:
size_hint: .2, .1
font_size: 20
<Mixer>:
orientation:'vertical'
Slider:
min:0
max:127
value:64
Slider:
min:0
max:127
value:100
<MainScreen>:
name: "mainscreen"
Mixer:
FloatLayout:
Button:
text: "Exit"
pos: root.width - self.width, 0
on_release: app.stop()
Main.py:
import kivy
kivy.require("1.9.1")
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.boxlayout import BoxLayout
class ScreenManagement(ScreenManager):
pass
class Mixer(BoxLayout):
pass
class MainScreen(Screen):
pass
class MainApp(App):
def build(self):
return Builder.load_file("Main.kv")
if __name__ == "__main__":
MainApp().run()
あなたの助けをありがとう!
コードを実行したところ、2つのスライダと1つのボタンが表示されます。 – jligeza
Jeez!ご意見ありがとうございます;それはおそらく私の設定/ Pythonのバージョンに起因するかもしれません。私はPython 2.7.12をWindows 10上で最新のKivy(1.9.1)で実行しています。結果は私のRaspberry Pi(2つではなく4つのスライダー)で同じです。奇妙な。 – aerodrink
kvファイルの名前をmain.kvに変更し、 'build'メソッドで明示的にロードしないでください。自動的に読み込まれます。 – jligeza