⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ controles standards ⇨ Text
tkinter.Text ( ).window_create ( )
⇨ MENU ⇨ MODULES ⇨ tkinter ⇨ controles standards ⇨ Text
tkinter.Text ( ).window_create ( )
DESCRIPTION.
Insère un controle tkinter quelconque, comme élément indépendant, dans le contenu un éditeur de texte.
SYNTAXE.
TXT_Editeur.window_create ( index , attribut1 = valeur , ... , attributn = valeur )
TXT_Editeur ⇨ instance quelconque de tkinter.Text ( ) [ OBLIGATOIRE ]
.window_create ( ) ⇨ appel de la méthode [ OBLIGATOIRE ]
index ⇨ emplacement de l'insertion de l'image [ OBLIGATOIRE ]
attribut = valeur ⇨ attribut à modifier avec sa nouvelle valeur [ OBLIGATOIRE ]
REMARQUES.
index est un str ( ) quelconque mais valide désignant un index dans un éditeur de texte. Un index valide a la forme : "paragraphe.place" ou un nom correspondant à une balise ou une position particulière.Voir la méthode tkinter.Text ( ).index ( ) pour plus d'informations sur les index.
La méthode tkinter.Text ( ).window_create ( ) permet d'insérer, ou embarquer, n'importe quel type de controle tkinter, et pas forcément une fenêtre, comme élément indépendant dans le contenu d'un éditeur de texte. Ce controle peut être une : fenêtre, un conteneur regroupant plusieurs autres controles ou un simple controle comme un bouton cliquable, mais il doit être créé après l'éditeur de texte qui l'héberge, car ce texte multilignes doit être nommé comme parent du controle. Le controle enfant dispose de tous les attributs et méthodes correspondant à son type.
Ce type d'élément est nommé fenêtre d'insertion ou fenêtre incrustée quelque soit le controle principal, conteur ou unitaire, qui le compose. Il sera placé à la position représenté par index, qui peut être un index absolu ou un index relatif, et glissera dans le contenu, si celui-ci est modifié.
Il est aussi possible de mentionner une fonction qui sera appelée pour la création de la fenêtre d'insertion avec l'attribut create, sinon l'attribut window indiquera que une identification du controle composant cette la fenêtre insertion.
LISTE DES ATTRIBUTS DES FENETRES D'INSERTION.
align = position
Alignement vertical si le controle est moins haute que le texte. position peut être : "baseline", "bottom", "center" ou "top".
create = fonction
Fonction à exécuter pour créer le controle de la fenêtre d'insertion.
padx = taille
Indique la taille de la marge supplémentaire à ajouter à droite et à gauche, de la fenêtre d'insertion. taille est un int ( ) positif.
pady = taille
Indique la taille de la marge supplémentaire à ajouter en haut et en bas, de la fenêtre d'insertion. taille est un int ( ) positif.
stretch = mode
Si stretch = 1, la fenêtre adapte sa hauteur à la ligne la contenant. Si stretch = 0, la fenêtre ne modifie pas sa hauteur.
window = widget
Identification : nom, identifiant, chemin, du contenu de la fenêtre d'insertion.
EXEMPLE.
import tkinter
def FNC_Colorer ( Q ) :
if Q == "rouge" :
TXT_Editeur [ "foreground" ] = "red"
TXT_Editeur [ "background" ] = "pink"
elif Q == "vert" :
TXT_Editeur [ "foreground" ] = "green"
TXT_Editeur [ "background" ] = "palegreen"
else :
TXT_Editeur [ "foreground" ] = "blue"
TXT_Editeur [ "background" ] = "aqua"
TKI_Principal = tkinter.Tk ( )
TXT_Editeur = tkinter.Text ( TKI_Principal , width = 40 , height = 12 )
BUT_Rouge = tkinter.Button ( TXT_Editeur , text = "rouge" , bg = "pink" , command = lambda : FNC_Colorer ( "rouge" ) )
BUT_Vert = tkinter.Button ( TXT_Editeur , text = "vert" , bg = "palegreen" , command = lambda : FNC_Colorer ( "vert" ) )
BUT_Bleu = tkinter.Button ( TXT_Editeur , text = "bleu" , bg = "aqua" , command = lambda : FNC_Colorer ( "bleu" ) )
TXT_Editeur.pack ( )
tkinter.Button ( TKI_Principal , text = "Quitter" , command = TKI_Principal.destroy ).pack ( )
TXT_Editeur.insert ( "1.0" , "Cliquez modifier les couleurs :\n\nen " )
TXT_Editeur.window_create ( "end" , window = BUT_Rouge )
TXT_Editeur.insert ( "end" , " ou " )
TXT_Editeur.window_create ( "end" , window = BUT_Vert )
TXT_Editeur.insert ( "end" , " ou " )
TXT_Editeur.window_create ( "end" , window = BUT_Bleu )
TXT_Editeur.insert ( "end" , "\n\nTapez votre texte à partir d'ici ...\n\n" )
TXT_Editeur.focus_set ( )
TKI_Principal.mainloop ( )
Votre aide est précieuse pour améliorer ce site, alors n'hésitez pas à faire part de