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

Kivy运行正常但GUI无内容显示问题求助

解决Kivy GUI界面无内容显示问题

核心问题是你代码里的childApp类初始化方法拼写错误:把Python类的构造方法__init__写成了__int__,导致布局的初始化逻辑完全没有执行,所以运行后GUI界面是空的。

修正后的代码如下:

import kivy
from kivy.app import App
from kivy.uix.gridlayout import GridLayout
from kivy.uix.label import Label
from kivy.uix.textinput import TextInput
from kivy.uix.button import Button

class childApp(GridLayout):
    def __init__(self,**kwargs):  # 修正拼写错误:__int__ → __init__
        super(childApp, self).__init__(**kwargs)  # 传入kwargs给父类构造,避免潜在问题
        self.cols = 2
        self.add_widget(Label(text = 'Student Name'))
        self.s_name = TextInput()
        self.add_widget(self.s_name)
    
        self.add_widget(Label(text = 'Student Marks'))
        self.s_marks = TextInput()
        self.add_widget(self.s_marks)

        self.add_widget(Label(text = 'Student Gender'))
        self.s_gender = TextInput()
        self.add_widget(self.s_gender)

class parentApp(App):
    def build(self):
        return childApp()

if __name__ == "__main__":
    parentApp().run()

额外补充两个小细节优化:

  • 调用父类构造时传入**kwargs,能兼容Kivy布局的参数传递需求
  • 统一代码格式,比如TextInput( )里的冗余空格可以去掉,写成TextInput()

内容的提问来源于stack exchange,提问作者Gnarlyeah

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 10:00:51