apprendre_kivy
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
kivy_2020_apprendre_kivy [2019/12/26 14:00] – [self.app] serge | apprendre_kivy [2020/10/19 07:12] (Version actuelle) – Tag0 Added: python Removed: python3,realisations_logicielles serge | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Kivy 2020 Apprendre Kivy ====== | + | ====== Kivy: l' |
<WRAP center round box 60% centeralign> | <WRAP center round box 60% centeralign> | ||
- | **[[http:// | + | **{{tagpage> |
+ | **[[http:// | ||
+ | </ | ||
+ | <WRAP center round box 40% centeralign> | ||
+ | **[[les_pages_kivy_en_details|Les pages Kivy en détails]]** | ||
</ | </ | ||
- | |||
<WRAP center round info 40% centeralign> | <WRAP center round info 40% centeralign> | ||
**Avec python 3 exclusivement !** | **Avec python 3 exclusivement !** | ||
Ligne 9: | Ligne 12: | ||
<WRAP center round box 60% centeralign> | <WRAP center round box 60% centeralign> | ||
- | **{{tagpage> | + | **[[kivy_un_exemple_pour_les_pros_yelen|Un autre exemple: Yelen]]** |
</ | </ | ||
+ | ===== Gallerie ===== | ||
+ | |||
+ | {{media_02: | ||
+ | |||
+ | {{media_02: | ||
+ | {{media_02: | ||
+ | {{media_02: | ||
+ | {{media_02: | ||
+ | |||
+ | {{media_02: | ||
+ | |||
+ | ===Modification des Options=== | ||
+ | {{media_02: | ||
+ | |||
+ | {{media_02: | ||
+ | |||
+ | {{media_02: | ||
+ | |||
+ | {{media_02: | ||
- | =====Cet exemple comprend en particulier===== | + | =====L'exemple |
- | * **Un Screen Manager** et 2 écrans | + | * **Un Screen Manager** et 3 écrans |
* **Un fichier de configuration** avec chargement, modifications | * **Un fichier de configuration** avec chargement, modifications | ||
* **Du réseau avec Twisted TCP et Multicast** **[[https:// | * **Du réseau avec Twisted TCP et Multicast** **[[https:// | ||
* **Les scripts sont longs parce qu'il incluent de bonnes explications** | * **Les scripts sont longs parce qu'il incluent de bonnes explications** | ||
+ | * **Scatter pour gérer le multitouch avec le tactile** | ||
* Il faut d' | * Il faut d' | ||
Ligne 29: | Ligne 52: | ||
- | ===== Les sources sur GitHub ===== | + | ===== Les sources |
- | * **[[https:// | + | * **[[https:// |
- | =====Commentaires===== | + | Comprend aussi: |
- | ====Comments==== | + | * Un serveur pour recevoir les envois du téléphone: |
+ | * Des [[https:// | ||
+ | |||
+ | ===Limitation=== | ||
+ | En fait, les réseaux Multicast et TCP tournent en permanence, la modification de cast dans les options bascule de l'un à l' | ||
+ | |||
+ | Pour arrêter le reactor de twisted: | ||
+ | reactor.stop() | ||
+ | et pour le relancer (non testé): | ||
+ | install_twisted_reactor() | ||
+ | |||
+ | ===Bugs=== | ||
+ | Il y en a toujours, en particulier l' | ||
+ | |||
+ | ===Le truc tout c..=== | ||
+ | * Mettre une image avec canal alpha sur un fond blanc dans un BoxLayout !! [[kivy_image_avec_alpha_sur_fond_blanc|Une image avec canal alpha sur un fond blanc dans un BoxLayout]] | ||
+ | |||
+ | =====Ressources===== | ||
+ | ====Installation de kivy==== | ||
+ | * **[[kivy_introduction|Kivy: | ||
+ | |||
+ | ====Remarques en désordre==== | ||
* **Pourquoi le *.kv ne fait pas ce que je lui dis de faire ?** | * **Pourquoi le *.kv ne fait pas ce que je lui dis de faire ?** | ||
- | Les objets héritent du précédent, | + | Les objets héritent du précédent, |
- | Canvas: clear coupe les héritages, mais ça marche rarement | + | |
+ | coupe les héritages | ||
+ | |||
+ | La commande magique, très surfaite | ||
+ | Canvas: | ||
+ | Clear | ||
* **Utiliser uniquement des BoxLayout** et des Box plus complexes en dernier recours. | * **Utiliser uniquement des BoxLayout** et des Box plus complexes en dernier recours. | ||
* **Il est enfin possible de mettre des accents dans le kv !** | * **Il est enfin possible de mettre des accents dans le kv !** | ||
- | ====Fichiers | + | ====Tout sur les fichiers |
- | * **[[kivy_les_fichiers_kv# | + | * **[[kivy_les_fichiers_kv|Tout sur les fichiers kv]]** |
+ | ====Tout sur les canvas==== | ||
+ | * **[[kivy_canvas|Les canvas dans Kivy]]** | ||
====self.app==== | ====self.app==== | ||
- | * [[kivy_les_fichiers_kv# | + | |
- | self.app est une variable globale | + | app est l' |
<code python> | <code python> | ||
Ligne 52: | Ligne 103: | ||
def on_start(self): | def on_start(self): | ||
| | ||
- | reactor.listenTCP(tcp_port, | + | reactor.listenTCP(tcp_port, |
+ | # ce self est le premier argument de TCPServerFactory() donc app | ||
+ | # équivaut à | ||
+ | # TCPServerFactory(app=self) | ||
</ | </ | ||
Ligne 59: | Ligne 113: | ||
<code python> | <code python> | ||
class TCPServerFactory(Factory): | class TCPServerFactory(Factory): | ||
- | protocol = TCPServer | ||
- | def __init__(self, | + | def __init__(self, |
self.app = app | self.app = app | ||
</ | </ | ||
====Permissions Internet==== | ====Permissions Internet==== | ||
- | * [[kivy_comment_faire_un_tas_de_chose# | + | |
====Compilation avec buildozer==== | ====Compilation avec buildozer==== | ||
- | [[kivy_2020_hello_world|Buildozer pour créer une application Android avec un script python]] exemple avec un Hello World. | + | **[[kivy_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 | * Ne pas mettre les modules de la bibliothèque standard python en requirements | ||
+ | * [[https:// | ||
====Deboggage sur Android==== | ====Deboggage sur Android==== | ||
- | * [[https:// | + | |
- | < | + | |
- | sudo apt-get install adb | + | ====plyer pour accéder aux datas Android==== |
- | adb root | + | |
- | adb shell | + | * **[[kivy_plyer|plyer]]** |
- | kminilte:/sdcard/kivy/TapOSC $ logcat | + | |
- | </code> | + | ====L' |
+ | Dans [[https://github.com/ | ||
+ | * build_config(self, | ||
+ | * build_settings(self, | ||
+ | * on_config_change(self, | ||
+ | {{tag> kivy python sb }} | ||
- | {{tag> |
apprendre_kivy.txt · Dernière modification : 2020/10/19 07:12 de serge