Bonjour à tous,

Dans l'appli Kivy que je développe (sur Raspberry + écran tactile), Je souhaite lorsque je quitte l'application générer un graphe avec matplotlib.

Problème

La génération de ce(s) graphe(s) met une 20aine de secondes. Pendant ce temps l'appli Kivy "freeze", une fois le graph generé, celle-ci peut enfin se quitter. Met l'utilisateur voir un écran qui ne répond pas pendant au moins 15 secondes, sans aucune informations...

Solution
Informer l'utilisateur, et c'est là que ça coince... j'ai essayé avec un pop up Kivy, avec un Label qui apparaitrait à ce moment donné, mais rien ne semble fonctionner...

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
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
    def fermerBanc(self):  
 
      [...]
 
        if(passerelle.graph1.flagGraph):
 
            p1 = Process(target=process_graph, args=(list_argument_graph_1,))
            p2 = Process(target=process_graph, args=(list_argument_graph_2,))
            p3 = Process(target=process_graph, args=(list_argument_graph_3,))
            p4 = Process(target=process_graph, args=(list_argument_graph_4,))
 
            try:
                p1.start()
            except AttributeError:
                Logger.warning('fermerBanc: impossible de generer un graph 1, fichier vide')
 
            try:
                p2.start()  
                pass
            except AttributeError:
                Logger.warning('fermerBanc: impossible de generer un graph 2, fichier vide')
 
            try:
                p3.start()
                pass
            except AttributeError:
                Logger.warning('fermerBanc: impossible de generer un graph 3, fichier vide')
 
            try:
                p4.start()
                pass              
            except AttributeError:
                Logger.warning('fermerBanc: impossible de generer un graph 4, fichier vide')
 
            self.msgWarning = Label(text="Merci de patienter...", font_size='55sp', size=(100, 50), pos_hint={'center_x': .5, 'center_y':.5})
            self.add_widget(self.msgWarning)
 
            p1.join()
            p2.join()
            p3.join()
            p4.join()
 
        exit()
Merci d'avance !!