Effacer 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: Union[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.