You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Kivy代码中嵌入的Button无法显示,仅kv文件方式有效

问题原因与解决方案

你的代码存在一个核心语法错误:构造函数名称书写错误。Python类的构造函数必须是__init__(前后各两个下划线),但你写成了_init__(仅单个前下划线),这会导致该初始化方法无法被系统自动调用,添加按钮的代码根本没执行,自然看不到按钮。

修正后的代码

from kivy.uix.stacklayout import StackLayout
from kivy.uix.button import Button
from kivy.app import App

class StackLayoutExample(StackLayout):
    def __init__(self,**kwargs):  # 修正为前后各两个下划线的__init__
        super().__init__(**kwargs)
        b = Button(text='Z')
        self.add_widget(b)

class TheLabApp(App):
    def build(self):
        return StackLayoutExample()

TheLabApp().run()

另外需确认已正确导入所需Kivy组件,且TheLabApp类实现了build方法返回布局实例——从你kv文件能生效的情况来看,TheLabApp的逻辑应该是正确的,核心问题就是构造函数的下划线错误。

内容的提问来源于stack exchange,提问作者Michał Salamon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.02 13:55:40