如何创建一个按钮来补充DictStore以自动将TextInputs id作为其键并将Textinput本身作为其值?

时间:2018-06-13 20:21:49

标签: python python-3.x kivy kivy-language

我目前正在尝试构建一个按钮作为我的程序的一部分,在各种屏幕上迭代TextInput对象(虽然我目前只在一个屏幕上使用它)并使用对象自动绑定每个单独的TextInput ID作为其键,并将任何文本输入到TextInput中作为其值。

我从https://kivy.org/docs/_modules/kivy/storage/dictstore.html复制了DictStore源代码 说实话,我不确定如何引用它。

我的按钮,标签和TextInput看起来像这样。我只有Save_Button通过,因为我不知道如何设置下一部分。

class Save_Button(Button):
    pass

class Ability(Label):
    pass

class Base(TextInput):
    pass

我的ScreenManager看起来像这样:

cs = ScreenManager()
cs.add_widget(Main_Screen(name = "mainscreen"))
cs.add_widget(Character_Details(name = "characterdetails"))
cs.add_widget(Skills_Sheet(name = "skillssheet"))
cs.add_widget(Items(name = "items"))
cs.add_widget(Level_Progression(name = "levelprogression"))

My TextInputs在我的kivy文件中构建如下,各种描述符描述了几种不同的类型。

<Base>:
    id: "base"
    multiline: False
    size_hint: 0.05, 0.05
    background_color: (0, 1, 0.5, 0.5)

<Enhancement>:
    id: "enhancement"
    multiline: False
    size_hint: 0.1, 0.05
    background_color: (0, 1, 0.5, 0.5)

然后各种具体的输入看起来像这样:

Base:
    id: con_base
    pos_hint: { "x": 0.05, "y": 0.65}

Base:
    id: int_base
    pos_hint: { "x": 0.05, "y": 0.60}


Enhancement:
    id: str_enhancement
    pos_hint: { "x": 0.115, "y": 0.75}

Enhancement:
    id: dex_enhancement
    pos_hint: { "x": 0.115, "y": 0.70}

0 个答案:

没有答案