Outils pour utilisateurs

Outils du site


apprendre_kivy

Ceci est une ancienne révision du document !


Kivy 2020 Apprendre Kivy

Avec python 3 exclusivement !

Cet exemple comprend en particulier

  • Un Screen Manager et 2 écrans
  • Un fichier de configuration avec chargement, modifications
  • Du réseau avec Twisted TCP et Multicast Using Twisted inside Kivy
  • Les scripts sont longs parce qu'il incluent de bonnes explications
  • Il faut d'abord être à l'aise avec le Pong de la doc et avec A Simple Paint App pour pouvoir aborder cet exemple.

Comment chercher ?

  • Dans la doc officielle, mais les chances de trouver sont quasi nulles.
  • Dans un moteur de recherche: ça finit souvent par des posts sur stackoverflow, avec des réponses médiocres fausses, uniquement motivées par le gain de points !

Une bonne solution: Les exemples des sources de kivy

  • Télécharger les sources sur github
  • Dans votre EDI créer un projet avec uniquement les exemples
  • Rechercher dans les fichiers: si vous chercher “source:”, vous aurez la liste de tous les fichiers qui utilisent “source:”. Si c'est un kv, trouver le .py corespondant pour l'exécuter.

Les sources de apprendre-kivy sur GitHub

Commentaires

Installation de kivy

En désordre

  • Pourquoi le *.kv ne fait pas ce que je lui dis de faire ?

Les objets héritent du précédent, qui héritent du précédent …
Canvas: clear coupe les héritages, mais ça marche rarement !

  • Utiliser uniquement des BoxLayout et des Box plus complexes en dernier recours.
  • Il est enfin possible de mettre des accents dans le kv !

Tout sur les fichiers kv

Tout sur les canvas

  • Les canvas dans Kivy ====self.app==== * Les fichiers kv: app self.app est une variable globale qui permet d'accéder à une class depuis une autre <code python> class ApprendreKivyApp(App): … def on_start(self): reactor.listenTCP(tcp_port, TCPServerFactory(self)) # ce self est l'instance de cette classe # ce self est le premier argument de TCPServerFactory() donc app # équivaut à # TCPServerFactory(app=self) </code> appelle <code python> class TCPServerFactory(Factory): def init(self, app): self.app = app </code> ====Permissions Internet==== * Réception sur Android en Multicast ====Compilation avec buildozer==== Buildozer pour créer une application Android avec un script python exemple avec un Hello World. * Ne pas mettre les modules de la bibliothèque standard python en requirements ====Deboggage sur Android==== * Deboggage sur Android**

pyjnius pour accéder aux datas Android

TODO supprimer pyjnius dans install kivy créer la page pyjnius

apprendre_kivy.1577624292.txt.gz · Dernière modification : 2019/12/29 12:58 de serge