SCALE

Scale

Le widget scale permet de faire varier à l’aide d’un curseur la valeur d’un nombre qui appartient à un intervalle défini par la syntaxe :

from = debut  to = fin #(debut et fin sont des nombres)

Pour afficher

les graduations c’est tickinterval=2 par exemple pour afficher les graduations paires. On affiche le titre de l’échelle par Label.

video mp4 by EasyHtml5Video.com v3.9.1

Le code :

Le code :

echelle.py

#0736 echelle.py
from tkinter import*
from fenetre import*
def arrivee(x):
 """configure l'angle extent de l'arc de cercle"""
 global arc1
 can.itemconfig(arc1,extent=x)
def depart(x):
 """configure l'angle start de l'arc de cercle"""
 global arc1
 can.itemconfig(arc1,start=x)
def couleur(x):
  """change la couleur de l'arc de cercle"""
  global arc1,couleur
  y=int(x)
  y=y-1
  couleur=['red','blue','dark orange','hot pink','khaki','green']
  can.itemconfig(arc1,fill=couleur[y])  

fenetre=Tk()
titre,taille,icone="scale","540x800","icone.ico"
fenetre=creerfenetre(fenetre,titre,icone,taille)
division=PanedWindow(orient=VERTICAL)
division.pack(expand="yes",fill="both")
panneau1=Label(division,text="Panneau Un",bg="white")
can1 = Canvas(panneau1, width =540 ,height =20, bg ='white')
can1.grid(row=4,column=0)
division.add(panneau1)
panneau2=Label(division,text="Panneau Deux")
division.add(panneau2)
can = Canvas(panneau2, width =540 ,height =500, bg ='white')
arc1=can.create_arc(10,10,500,500,start=0,extent=1,fill="red")
item=Scale(panneau1,orient='horizontal',from_=0,to_=360,resolution=1,tickinterval=60,\
length=540,label='Arrivée',font='verdana 12 bold',command=arrivee)
item1=Scale(panneau1,orient='horizontal',from_=0,to_=360,resolution=1,tickinterval=60,\
length=540,label="départ",fg='blue',font='verdana 12 bold',command=depart)
item0=Label(panneau1,text='Couleur',font='verdana 12 bold')
item2=Scale(panneau1,orient='horizontal',from_=1,to_=6,resolution=1,tickinterval=1,\
length=540,fg='white',font='verdana 12 bold',command=couleur,showvalue=0)
item.grid(row=0,column=0)
item1.grid(row=1,column=0)
item0.grid(row=2,column=0,sticky='w')
item2.grid(row=3,column=0)
can1.create_rectangle(0,0,90,20,fill='red')
can1.create_rectangle(91,0,1801,20,fill='blue')
can1.create_rectangle(181,0,270,20,fill='orange')
can1.create_rectangle(271,0,360,20,fill='pink')
can1.create_rectangle(361,0,450,20,fill='khaki')
can1.create_rectangle(451,0,540,20,fill='green')
degre=360  
can.grid(row=0,column=0,rowspan=2)
fenetre.mainloop()
Label
Affiche une étiquette à l’intérieur de ce widget avec le texte utilisant les options du widget Label. L’étiquette apparaît dans le coin supérieur gauche si le widget est orienté horizontalement et dans le coin supérieur droit s’il est orienté verticalement.
length
La longueur du widget dans la direction où celui-ci est orienté
orient
Utilisez “horizontal” pour l’orienter horizontalement ou “vertical” pour l’orienter verticalement. L’orientation par défaut est “vertical”.
relief
Avec la valeur par défaut “flat”, le widget n’a pas de bordure visible. Vous pouvez utiliser la valeur “solid” pour l’entourer d’un cadre noir, ou utiliser les reliefs des boutons.
activebackground
La couleur du curseur lorsque la souris estau-dessus.
bg #background
La couleur d’arrière-plan de la partie du widget qui est située en dehors de l’aire de glissement.
bd # borderwidth
La largeur de la bordure qui forme le contour.
command
Une fonction qui sera appelée à chaque fois que le curseur sera déplacé. reçoit un argument (lignes 4, 8 et 12).La variable x qui est en paramètre dans la fonction reçoit comme valeur le nombre où est situé le curseur .