Python 3 - Échelle Tkinter

Le widget Echelle fournit un objet curseur graphique qui vous permet de sélectionner des valeurs à partir d'une échelle spécifique.

Syntaxe

Voici la syntaxe simple pour créer ce widget -

w = Scale ( master, option, ... )

Paramètres

  • master - Ceci représente la fenêtre parente.

  • options- Voici la liste des options les plus couramment utilisées pour ce widget. Ces options peuvent être utilisées sous forme de paires clé-valeur séparées par des virgules.

N ° Sr. Option et description
1

activebackground

La couleur d'arrière-plan lorsque la souris est sur l'échelle.

2

bg

La couleur d'arrière-plan des parties du widget situées à l'extérieur de l'auge.

3

bd

Largeur de la bordure 3D autour de l'auge et du curseur. La valeur par défaut est de 2 pixels.

4

command

Une procédure à appeler à chaque fois que le curseur est déplacé. Cette procédure recevra un argument, la nouvelle valeur d'échelle. Si le curseur est déplacé rapidement, vous n'obtiendrez peut-être pas de rappel pour toutes les positions possibles, mais vous obtiendrez certainement un rappel lorsqu'il se réglera.

5

cursor

Si vous définissez cette option sur un nom de curseur ( flèche, point, etc. ), le curseur de la souris se transforme en ce motif lorsqu'il est au-dessus de l'échelle.

6

digits

La façon dont votre programme lit la valeur actuelle affichée dans un widget d'échelle se fait via une variable de contrôle. La variable de contrôle pour une échelle peut être un IntVar, un DoubleVar (float) ou un StringVar. S'il s'agit d'une variable chaîne, l'option digits contrôle le nombre de chiffres à utiliser lorsque la valeur de l'échelle numérique est convertie en chaîne.

sept

font

La police utilisée pour l'étiquette et les annotations.

8

fg

La couleur du texte utilisé pour l'étiquette et les annotations.

9

from_

Valeur flottante ou entière qui définit une extrémité de la plage de l'échelle.

dix

highlightbackground

La couleur de la mise au point en surbrillance lorsque l'échelle n'a pas de mise au point.

11

highlightcolor

La couleur de la mise en évidence de mise au point lorsque l'échelle a la mise au point.

12

label

Vous pouvez afficher une étiquette dans le widget échelle en définissant cette option sur le texte de l'étiquette. L'étiquette apparaît dans le coin supérieur gauche si l'échelle est horizontale ou dans le coin supérieur droit si elle est verticale. La valeur par défaut est aucune étiquette.

13

length

La longueur du widget d'échelle. Il s'agit de la dimension x si l'échelle est horizontale ou de la dimension y si elle est verticale. La valeur par défaut est de 100 pixels.

14

orient

Définissez orient = HORIZONTAL si vous souhaitez que l'échelle soit exécutée le long de la dimension x, ou orient = VERTICAL pour qu'elle soit parallèle à l'axe y. La valeur par défaut est horizontale.

15

relief

Spécifie l'apparence d'une bordure décorative autour de l'étiquette. La valeur par défaut est FLAT; pour d'autres valeurs.

16

repeatdelay

Cette option contrôle la durée pendant laquelle le bouton 1 doit être maintenu enfoncé dans le creux avant que le curseur ne commence à se déplacer dans cette direction à plusieurs reprises. La valeur par défaut est repeatdelay = 300 et les unités sont en millisecondes.

17

resolution

Normalement, l'utilisateur ne pourra changer l'échelle qu'en unités entières. Définissez cette option sur une autre valeur pour modifier le plus petit incrément de la valeur de l'échelle. Par exemple, si from_ = -1.0 et to = 1.0, et que vous définissez la résolution = 0.5, l'échelle aura 5 valeurs possibles: -1.0, -0.5, 0.0, +0.5 et +1.0.

18

showvalue

Normalement, la valeur actuelle de l'échelle est affichée sous forme de texte par le curseur (au-dessus pour les échelles horizontales, à gauche pour les échelles verticales). Définissez cette option sur 0 pour supprimer cette étiquette.

19

sliderlength

Normalement, le curseur mesure 30 pixels sur la longueur de l'échelle. Vous pouvez modifier cette longueur en définissant l'option sliderlength sur la longueur souhaitée.

20

state

Normalement, les widgets d'échelle répondent aux événements de souris, et lorsqu'ils ont le focus, également aux événements de clavier. Définissez state = DISABLED pour que le widget ne réponde pas.

21

takefocus

Normalement, le focus passera par les widgets d'échelle. Définissez cette option sur 0 si vous ne souhaitez pas ce comportement.

22

tickinterval

Pour afficher les valeurs d'échelle périodiques, définissez cette option sur un nombre, et les graduations seront affichées sur les multiples de cette valeur. Par exemple, si from_ = 0.0, to = 1.0, et tickinterval = 0.25, les étiquettes seront affichées le long de l'échelle aux valeurs 0.0, 0.25, 0.50, 0.75 et 1.00. Ces étiquettes apparaissent sous l'échelle si horizontale, à sa gauche si verticale. La valeur par défaut est 0, ce qui supprime l'affichage des graduations.

23

to

Une valeur flottante ou entière qui définit une extrémité de la plage de l'échelle; l'autre extrémité est définie par l'option from_, décrite ci-dessus. La valeur to peut être supérieure ou inférieure à la valeur from_. Pour les échelles verticales, la valeur to définit le bas de l'échelle; pour les échelles horizontales, l'extrémité droite.

24

troughcolor

La couleur de l'auge.

25

variable

La variable de contrôle pour cette échelle, le cas échéant. Les variables de contrôle peuvent provenir de la classe IntVar, DoubleVar (float) ou StringVar. Dans ce dernier cas, la valeur numérique sera convertie en chaîne.

26

width

La largeur de la partie creux du widget. Il s'agit de la dimension x pour les échelles verticales et de la dimension y si l'échelle a orient = HORIZONTAL. La valeur par défaut est 15 pixels.

Méthodes

Les objets d'échelle ont ces méthodes -

N ° Sr. Méthode et description
avoir() Cette méthode renvoie la valeur actuelle de l'échelle.
set (valeur) Définit la valeur de l'échelle.

Exemple

Essayez vous-même l'exemple suivant -

# !/usr/bin/python3
from tkinter import *

def sel():
   selection = "Value = " + str(var.get())
   label.config(text = selection)

root = Tk()
var = DoubleVar()
scale = Scale( root, variable = var )
scale.pack(anchor = CENTER)

button = Button(root, text = "Get Scale Value", command = sel)
button.pack(anchor = CENTER)

label = Label(root)
label.pack()

root.mainloop()

Résultat

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -