Как сделать слайдер Tkinter, который масштабируется логарифмически? - PullRequest
0 голосов
/ 23 апреля 2020

На слайдере значения будут варьироваться от 0,05 до 100 (1 в качестве центра), и, когда пользователь меняет положение слайдера, он логарифмически обновляет вывод, как показано на рисунке:

image

Как я могу изменить интервалы (метки под ползунком) и вывод таким образом?

1 Ответ

0 голосов
/ 23 апреля 2020

Вы можете сделать это, установив command для своего Scale виджета ::

import tkinter as tk

root = tk.Tk()

label = tk.Label(root, text="1.00")
label.pack()
scale = tk.Scale(root, from_=-20, to=20, tickinterval=0.1, orient="horizontal", showvalue=0)
scale.config(command=lambda e: label.config(text=f"{10**(scale.get()/10):.2f}"))
scale.pack()

root.mainloop()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...