2016-12-19 1 views
0

これは、TabbedPanelItemごとに2つのタブとデフォルトのタブを加えたものです。なぜこれが起こり、どうすればそれを防ぐのですか?このコードがウィジェットのコピーを2つ作成しているのはなぜですか?

Kivy: :

TabbedPanelItem: 
     text: 'List' 

    TabbedPanelItem: 
     text: 'Add/Edit' 

    TabbedPanelItem: 
     text: 'Delete' 

のPython:

from kivy.app import App 
from kivy.lang import Builder 
from kivy.uix.tabbedpanel import TabbedPanel 

presentation = Builder.load_file('my.kv') 

class Panel(TabbedPanel): 
    pass 

class MyApp(App): 
    def build(self): 
     return Panel() 

if __name__ == '__main__': 
    MyApp().run() 

答えて

0

それはあなたのアプリケーションのクラスと同じ名前を持っているので、あなたのKVファイルが暗黙のうちにあなたの明示的なBuilder.load_file、一度で1回、2回ロードされています(しかし、デフォルトのkvファイルがロードされるためには、小文字でAppなしで)。

明示的にBuilder.load_fileを削除しても問題ありません。

関連する問題