首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"key_error: pos_hint“

"key_error: pos_hint“
EN

Stack Overflow用户
提问于 2014-09-11 02:37:22
回答 1查看 517关注 0票数 1

我是新来的基维。

我一次又一次地犯了错误

文件"_event.pyx",第255行,kivy._event.EventDispatcher.bind (kivy_event.c:3629) KeyError:'pos_hint‘

这是我的密码:

代码语言:javascript
复制
class RiegosBoxLayout(BoxLayout):

    def __init__(self, **kwargs):
        super(RiegosBoxLayout, self).__init__(**kwargs)
        self.orientation= "vertical"
        lb= Label(text= "Riegos programados", font_size= '30dp', bold= True, size_hint= (1, .10))       
        self.add_widget(lb)
        db= sqlite3.connect('../db/dbInvernadero.s3db')
        cursor = db.cursor()
        cursor.execute("select ID, descripcion from tbRiegos")
        la= ListAdapter(
                        data=["{}".format(i[1]) for i in cursor.fetchall()],
                        selection_mode='single', 
                        allow_empty_selection=False, 
                        cls= ListItemButton)

        #lv = ListView( item_strings=[str(i[1]) for i in cursor.fetchall()])
        self.add_widget(la) # if i pass lv, it goes ok
        db.close()


class MainScreen(Screen):

    def __init__(self, **kwargs):
        super(MainScreen, self).__init__(**kwargs)
        tb_panel= TabbedPanel(do_default_tab=False, size_hint=(1,1), pos_hint= {'center_x': .5, 'center_y': .5})
        tabs= ["Operaciones", "Riegos", "Valvulas", "Radiacion", "Configuracion"]

        for tb in tabs:

            if (tb == "Riegos"):
                tbi=TabbedPanelItem(text=tb)
                tbi.add_widget(RiegosBoxLayout())
                tb_panel.add_widget(tbi)
            else:
                tb_panel.add_widget(TabbedPanelItem(text=tb))

        self.add_widget(tb_panel)

class MainApp(App):

    def build(self):
        # Create the screen manager
        sm = ScreenManager()
        sc=MainScreen()
        sm.add_widget(sc)
        return sm

if __name__ == '__main__':
    MainApp().run()
EN

回答 1

Stack Overflow用户

发布于 2014-09-11 14:32:24

ListAdapter不是Widget。当您使用ListView时,它可以工作,因为这是一个Widget。你需要ListView

代码语言:javascript
复制
lv = ListView(adapter=la)
self.add_widget(lv)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25778187

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档