Python Kivy自定义小部件实例化两次
我正在尝试构建一个简单的Kivy自定义小部件,其中包含两个滑块。 当屏幕渲染时,我得到两对滑块,而不是一对 我做错了什么 Main.kv:Python Kivy自定义小部件实例化两次,python,user-interface,kivy,Python,User Interface,Kivy,我正在尝试构建一个简单的Kivy自定义小部件,其中包含两个滑块。 当屏幕渲染时,我得到两对滑块,而不是一对 我做错了什么 Main.kv: ScreenManagement: MainScreen: <Button>: size_hint: .2, .1 font_size: 20 <Mixer>: orientation:'vertical' Slider: min:0 max:127
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()
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()
谢谢你的帮助 您应该将kv文件重命名为
main.kv
,并在build
方法中删除它的显式负载。它将自动加载自身。这个bug很奇怪,可能值得一看。您应该将kv文件重命名为main.kv
,并在build
方法中删除它的显式加载。它将自动加载自身。这个bug很奇怪,可能值得一张罚单。我运行了你的代码,看到两个滑块和一个按钮。天哪!感谢您的反馈;那么可能是因为我的配置/Python版本。我在Windows10上使用最新的Kivy(1.9.1)运行Python 2.7.12。尽管我不得不提到,在我的Raspberry Pi上的结果是相同的(4个滑块而不是两个)。奇怪。请尝试将kv文件重命名为,、main.kv“”,不要在build
方法中显式加载它。它应该是自动加载的。@jligeza:非常感谢,这完全成功了!!;)让我重写一下答案,这样以后的读者更容易搜索。我运行了你的代码,我可以看到两个滑块和一个按钮。天哪!感谢您的反馈;那么可能是因为我的配置/Python版本。我在Windows10上使用最新的Kivy(1.9.1)运行Python 2.7.12。尽管我不得不提到,在我的Raspberry Pi上的结果是相同的(4个滑块而不是两个)。奇怪。请尝试将kv文件重命名为,、main.kv“”,不要在build
方法中显式加载它。它应该是自动加载的。@jligeza:非常感谢,这完全成功了!!;)让我重写一下答案,这样以后的读者更容易搜索。情况仍然如此。情况仍然如此。