Changer le mouvement en changeant la liste déroulante avec tkinter

Le code source est le suivant.

import tkinter
from tkinter import ttk

colors = ['Red', 'Green', 'Blue']
subcolors = ["Black", "White"]


def add_combobox_subcolors():
    def inner(self):
        cb_subcolors.config(values=subcolors)
        cb_subcolors.set(subcolors[0])
        cb_subcolors.pack()

    return inner


root = tkinter.Tk()
root.geometry("200x200")
root.title("Color Picker")

cb_subcolors = ttk.Combobox(root, values=colors, width=10, state='readonly')

cb_colors = ttk.Combobox(root, values=colors, width=10, state='readonly')
cb_colors.set(colors[0])
cb_colors.bind('<<ComboboxSelected>>', add_combobox_subcolors())
cb_colors.pack()

root.mainloop()

Si vous modifiez la sélection de la zone de liste déroulante des couleurs, une zone de liste déroulante de sous-couleurs apparaîtra. Étant donné que la liste de la zone de liste déroulante des sous-couleurs est également attribuée lorsque la zone de liste déroulante des couleurs est sélectionnée, Ceci est utile lorsque vous souhaitez modifier le contenu de la zone de liste déroulante à ajouter en fonction de l'élément sélectionné dans la première zone de liste déroulante.

Merci d'avoir lu jusqu'au bout. Revoyons-nous.

Recommended Posts

Changer le mouvement en changeant la liste déroulante avec tkinter
Créer une matrice avec PythonGUI (combo tkinter)
Créez Fatjar en changeant la classe principale avec Gradle
Installer en spécifiant la version avec pip
Vous ne pouvez pas changer aspect_ratio avec sympy.plotting? À propos de l'affaire
J'ai essayé de jouer avec la calculatrice avec tkinter
Élevez la dimension avec np.newaxis et opération de diffusion
Modifiez la chaîne de caractères à remplacer en fonction de la chaîne de caractères correspondante en la remplaçant par l'expression régulière Python