⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ controles standards ⇨ Canvas
tkinter.Canvas ( ).index ( )
⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ controles standards ⇨ Canvas
tkinter.Canvas ( ).index ( )
DESCRIPTION.
Retourne l'index du caractère, dans un élément texte d'une zone de dessin, placé à l'index spécifique indiqué.
SYNTAXE.
Variable = CAN_Toile.index ( element , place )
Variable = ⇨ variable qui recevra la valeur [ optionnel ]
CAN_Toile ⇨ instance quelconque de tkinter.Canvas ( ) [ OBLIGATOIRE ]
.index ( ) ⇨ appel de la méthode [ OBLIGATOIRE ]
element ⇨ élément texte à modifier [ OBLIGATOIRE ]
place ⇨ index du premier caractère à supprimer [ OBLIGATOIRE ]
REMARQUES.
element peut être un int ( ) représentant l'identifiant numérique, un str ( ) indiquant un tag ou la variable, désignant un élément texte, c'est à dire créé uniquement avec la méthode tkinter.Canvas ( ).create_text ( ).
place est un index spécifique. Les index spécifiques sont des constantes exprimées sous la forme d'un str ( ) et peuvent prendre l'une des valeurs suivantes :
- "insert", correspond à l'index du curseur d'insertion ;
- "sel.first", correspond à l'index du premier caractère de la sélection dans le texte ;
- "sel.last", correspond à l'index du dernier caractère de la sélection dans le texte ;
- "end", correspond à l'index du dernier caractère de la sélection dans le texte ;
- "@x,y", correspond à l'index du caractère à la position du pixel aux coordonnées (x,y) (voir l'exemple).
Si element n'a pas de sélection au moment de l'appel, les valeurs "sel.first" et "sel.last" feront lever une exception à Python.
Dans la chaine "@x,y" : x et y sont deux int ( ) correspondant aux coordonnées du pixel référencé. Si la valeur de :
- x est à gauche de element, c'est l'index du premier caractère de la ligne contenant y qui est retourné ;
- x est à droite de element, c'est l'index du dernier caractère de la ligne contenant y qui est retourné ;
- y est au dessus de element, c'est l'index 0 (zéro) qui est retourné ;
- y est au dessous de element, c'est l'index du dernier caractère du texte de element qui est retourné.
Rappel : le premier caractère d'une chaine de caractères est à l'index 0.
EXEMPLE.
import tkinter
def FNC_Index ( ) :
kabscisse = TKI_Principal.winfo_pointerx ( ) - CAN_Texte.winfo_rootx ( )
kordonnee = TKI_Principal.winfo_pointery ( ) - CAN_Texte.winfo_rooty ( )
kposition = f"@{ kabscisse },{ kordonnee }"
kindex = CAN_Texte.index ( 1 , kposition )
LAB_Message [ "text" ] = f"Canvas.index ( 1 , { kposition } )\nretourne l'index : { kindex }"
TKI_Principal.after ( 50 , FNC_Index )
TKI_Principal = tkinter.Tk ( )
BUT_Quitter = tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy )
LAB_Message = tkinter.Label ( TKI_Principal , relief = "solid" , bd = 3 , height = 3 )
ktexte = "Mon Python à moi.\nUn Python pour tous.\nEt bien plus encore ...\n\nOrigine NERD"
CAN_Texte = tkinter.Canvas ( TKI_Principal , bg = "white" , width = 300 , height = 200 )
CAN_Texte.create_text ( 150 , 100 , text = ktexte , justify = "center" , font = ( None , 16 ) )
del ktexte
CAN_Texte.pack ( )
LAB_Message.pack ( fill = "both" )
BUT_Quitter.pack ( fill = "both" )
FNC_Index ( )
TKI_Principal.mainloop ( )
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de