kivy_comment_faire_un_tas_de_chose
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édenteProchaine révisionLes deux révisions suivantes | ||
kivy_comment_faire_un_tas_de_chose [2018/09/20 13:26] – [Kivy: Comment faire un tas de chose] serge | kivy_comment_faire_un_tas_de_chose [2020/01/20 17:51] – [Comment lister tous les widgets dans le python] serge | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ======Kivy: Comment faire un tas de chose====== | + | ======Kivy: Comment faire un tas de chose ====== |
<WRAP center round box 60% centeralign> | <WRAP center round box 60% centeralign> | ||
- | **{{tagpage> | + | **{{tagpage> |
+ | **[[http:// | ||
</ | </ | ||
- | ===== Pourquoi kivy est-il traître | + | ===== Comment chercher |
+ | ====Sur internet==== | ||
+ | * Dans la **[[https:// | ||
+ | * Dans un moteur de recherche: ça finit souvent par des posts sur stackoverflow, | ||
- | **Kivy masque des erreurs python** | + | ====Une bonne solution: Les exemples des sources de kivy==== |
+ | | ||
+ | | ||
+ | | ||
- | Par exemple: | + | =====Des explications avec les exemples des sources===== |
+ | Une liste de scripts qui explique bien: | ||
- | * un argument qui manque | + | * **pos_hint** : [[https:// |
+ | * **bubble** : [[https:// | ||
+ | * **camera** : [[https:// | ||
+ | * **carousel** : [[https:// | ||
+ | * **mipmap** : [[https:// | ||
+ | * **text_size = textwrap** : [[https:// | ||
+ | * **text with markup** : [[https:// | ||
+ | * **popup** : [[https:// | ||
+ | * **scatter** : [[https:// | ||
+ | * **scrollview** : [[https:// | ||
+ | * **splitter** : [[https:// | ||
+ | * **tabbed panel = onglet** : [[https:// | ||
+ | * **text align** : [[https:// | ||
+ | * **video player** : [[https:// | ||
+ | * **ErrorPopup(Popup)** : [[https:// | ||
+ | =====Comment lister tous les widgets | ||
+ | * **[[https:// | ||
+ | Par exemple, extrait de [[https:// | ||
+ | # Recherche de tous les widgets de self | ||
+ | print([type(widget) for widget in self.walk(loopback=True)]) | ||
+ | # Recherche de tous les widgets de Screen1 | ||
+ | print(self.ids.sm) | ||
+ | f = self.ids.sm.get_screen(" | ||
+ | print([type(widget) for widget in f.walk(loopback=True)]) | ||
+ | |||
+ | Sortie de [type(widget) for widget in self.walk(loopback=True)] | ||
+ | < | ||
+ | <class ' | ||
+ | <class 'kivy.uix.actionbar.ActionBar'>, | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | <class ' | ||
+ | ...... | ||
+ | </ | ||
+ | =====Comment passer d'une class à une autre===== | ||
+ | En fait, **comment passer d'un objet à un autre !** | ||
- | ===== La commande magique ===== | + | Faire des print(de quoi ?). Commencer par |
+ | print(dir(self)) | ||
+ | puis dans la liste des méthodes et attributs, ayez de nez. Si app est dans la liste: | ||
+ | print(dir(self.app)) | ||
+ | | ||
- | Dans Blender, le raccourcis magique c'est: | ||
- | **[[https:// | ||
- | Dans le *.kv, c'est: [[https:// | ||
- | |||
- | <code python> | ||
- | canvas: | ||
- | Clear | ||
- | </ | ||
- | ===== Pourquoi définir les attributs comme attributs de classe ? ===== | + | ===== Pourquoi définir les attributs |
**Parce que c'est comme ça ? Quand lama fâché, lui toujours faire ainsi !** | **Parce que c'est comme ça ? Quand lama fâché, lui toujours faire ainsi !** | ||
+ | Voir l' | ||
===== Comment changer la couleur d'un Rectangle ? ===== | ===== Comment changer la couleur d'un Rectangle ? ===== | ||
Ligne 93: | Ligne 138: | ||
... | ... | ||
</ | </ | ||
+ | |||
+ | =====Button background_color===== | ||
+ | <code python> | ||
+ | Button: | ||
+ | background_normal: | ||
+ | background_color: | ||
+ | </ | ||
+ | |||
+ | =====Texte en gras dans un label===== | ||
+ | * **[[https:// | ||
+ | <code python> | ||
+ | Label: | ||
+ | canvas.before: | ||
+ | Color: | ||
+ | rgba: 1, 1, 1, 1 | ||
+ | Rectangle: | ||
+ | pos: self.pos | ||
+ | size: self.size | ||
+ | size_hint_y: | ||
+ | markup: True | ||
+ | text: ' | ||
+ | color: 1, 0, 0.5, 1 | ||
+ | </ | ||
+ | |||
+ | |||
===== Factory ===== | ===== Factory ===== | ||
Factory peut être utilisée pour enregistrer automatiquement toute classe ou module et en instancier des classes n' | Factory peut être utilisée pour enregistrer automatiquement toute classe ou module et en instancier des classes n' | ||
- | * [[http:// | + | |
===== Réception sur Android en Multicast ===== | ===== Réception sur Android en Multicast ===== | ||
Ligne 107: | Ligne 176: | ||
===== Twisted dans kivy ===== | ===== Twisted dans kivy ===== | ||
- | Les 2 API ont un | + | * **[[https://kivy.org/doc/stable/guide/other-frameworks.html|Integrating with other Frameworks]]** propose l'intégration des 2 ! |
- | tourne_pour_toujours() | + | * **Exemple** avec [[apprendre_kivy|Apprendre Kivy]] |
- | pour les lancer. | + | |
- | + | ||
- | Les deux ne peuvent pas tourner dans un thread. | + | |
- | + | ||
- | La solution est: [[https://github.com/kivy/kivy/ | + | |
- | Erreur obtenue | ||
- | _threadselect interface of twisted is not available on Python 3 | ||
- | {{tag> | + | {{tag> |
kivy_comment_faire_un_tas_de_chose.txt · Dernière modification : 2022/11/19 09:49 de serge