Hello, 2ème post de la journée je me suis peut être embarqué dans un projet un peu trop compliqué
J'essaye de me créer une appli qui me donne l'heure du prochain bus qui vas passer.
Je me suis dit que ça pourrait être pratique de l'avoir sur mon téléphone et j'ai commencer à utiliser le module kivy et kivymd, j'ai bien compris mais depuis presque 1h je suis confronté à une erreur:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
File "C:\Users\oscar\PycharmProjects\pythonProject2\alt.py", line 20, in build
     sm.add_widget(Screen1(name = "screen1"))
 TypeError: ScreenManager.add_widget() missing 1 required positional argument: 'widget'
Voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
from kivymd.app import MDApp
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.lang import Builder
 
 
class Screen1(Screen):
    pass
 
 
class Screen2(Screen):
    pass
 
 
class Main(MDApp):
    def build(self):
        Builder.load_file("mybus.kv")
 
        sm = ScreenManager
        sm.add_widget(Screen1(name = "screen1"))
        sm.add_widget(Screen2(name = "screen2"))
 
        return sm
 
 
Main().run()
Et voici le fichier .kv :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
<Screen1>
    MDLabel:
        text: "Aller ou Retour ?"
        halign: "center"
    MDRaisedButton:
        text: "Aller"
        on_release: root.manager.current = "screen2"
    MDRaisedButton:
        text: "Retour"
        on_release: root.manager.current = "screen2"
<Screen2>
    MDImage:
        source: logo.jpeg