Python - TKinter。有没有办法检测按下特定键时比例(滑块)值是否发生变化?

问题描述 投票:0回答:1

我有 Scale 小部件来设置要绘制的圆圈颜色的 int 值。默认情况下,我们只需设置颜色变量的值:

def get_color(value):
    figures_color.set(value)

scale_color = tk.Scale(root, label='Color', variable = figures_color, from_=1200, to=24000, orient=tk.HORIZONTAL, length=500, showvalue=0, tickinterval=2000, command=get_color)

但我对其他选择感兴趣。如果在按下

Shift
键时更改了比例值,我们需要标记该圆圈也应该填充一些颜色。像这样的东西:

def get_color_fill(event):
    fill_circle = True

但我不知道如何以正确的方式做到这一点(或者是否可能)。有什么建议吗?

python tkinter keypress
1个回答
0
投票

要检查是否按下了某个键,可以使用键盘模块。您需要首先使用以下命令安装它:

pip install keyboard 

然后在你的代码中:

import keyboard

def get_color_fill(event):
    fill_circle = True

def get_color(value):
    if not keyboard.is_pressed('shift'):
        figures_color.set(value)

    elif keyboard.is_pressed('shift'):
        get_color_fill()

scale_color = tk.Scale(root, label='Color', variable = figures_color, from_=1200, to=24000, orient=tk.HORIZONTAL, length=500, showvalue=0, tickinterval=2000, command=get_color)
© www.soinside.com 2019 - 2024. All rights reserved.