Исходный код EJIO.ctk_extender.widget.form.fields.slider
## /ctk_extender/widget/form/fields/slider.py
import customtkinter as ctk
from typing import Any
from ...base import Widget
from ...geometry import GeometryStrategy
from .base import InputField
__all__ = [
'FormSlider',
]
[документация]
class FormSlider(Widget, InputField):
"""Компонент ползунка для формы (на базе ctk.CTkSlider)."""
def __init__(
self,
parent: Any,
name: str,
from_value: float = 0.0,
to_value: float = 100.0,
default_value: float = 0.0,
geometry: GeometryStrategy | None = None
) -> None:
self._name: str = name
self._from_value: float = from_value
self._to_value: float = to_value
self._default_value: float = default_value
super().__init__(parent, geometry)
# Устанавливаем дефолтное значение после сборки
self.set_value(self._default_value)
[документация]
def build(self) -> ctk.CTkSlider:
return ctk.CTkSlider(self.parent, from_=self._from_value, to=self._to_value) #TODO: посмотреть изменения
@property
def name(self) -> str:
return self._name
[документация]
def set_value(self, value: Any) -> None:
getattr(self.ctk_instance, 'set')(float(value))