Effacer ou modifier des objets

La fonction efface_tout(), comme son nom l’indique, efface tous les objets présents sur la fenêtre.

fltk.efface_tout() None

Efface la fenêtre.

La fonction efface() permet d’effacer un objet précis, ou bien un ensemble d’objets (aucun, un ou plusieurs) possédant le même tag.

fltk.efface(objet_ou_tag: int | str) None

Efface objet de la fenêtre.

Param:

objet ou étiquette d’objet à supprimer

Type:

int ou str

Le paramètre objet peut être de deux types : soit il s’agit d’une référence d’objet récupérée à la création de celui-ci, soit d’une étiquette d’objet passée lors de la création grâce au paramètre optionnel tag des fonctions ligne(), rectangle(), etc., comme le montre l’exemple ci-dessous.

from fltk import *

cree_fenetre(400, 400)

rect1 = rectangle(50, 50, 200, 200,
                  remplissage="red", tag="rectangle_rouge")
rect2 = rectangle(100, 100, 300, 300,
                  remplissage="blue")

attend_ev()
efface(rect2)
attend_ev()
efface("rectangle_rouge")
attend_ev()

ferme_fenetre()

Le programme affiche successivement:

_images/efface-anim.png

Avertissement

Les objets ne sont pas effacés immédiatement de la fenêtre. Pour qu’ils disparaissent, il faut faire appel à la fonction mise_a_jour(). La fonction attente_clic() et ses variantes provoquent aussi l’affichage de tous les dessins en attente.

La fonction modifie() permet de changer certaines caractéristiques d’un objet, comme sa couleur ou son remplissage.

fltk.modifie(objet_ou_tag: int | str, **options: Dict[str, str]) None

La fonction deplace() permet de déplacer un objet selon un certain vecteur, spécifié par son amplitude en abscisse et en ordonnée.

fltk.deplace(objet_ou_tag: int | str, distance_x: int | float, distance_y: int | float) None