Files
godot-docs-l10n/classes/uk/class_range.rst
Rémi Verschelde c3f2364c10 Sync classref with 4.6 branch
Lots of translations invalidated (fuzzied) as we just synced Weblate.
2025-12-19 16:39:51 +01:00

339 lines
18 KiB
ReStructuredText
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_Range:
Range
=====
**Успадковує:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
**Успадковано від:** :ref:`EditorSpinSlider<class_EditorSpinSlider>`, :ref:`ProgressBar<class_ProgressBar>`, :ref:`ScrollBar<class_ScrollBar>`, :ref:`Slider<class_Slider>`, :ref:`SpinBox<class_SpinBox>`, :ref:`TextureProgressBar<class_TextureProgressBar>`
Абстрактний базовий клас контролю, який представляє номер в діапазоні.
.. rst-class:: classref-introduction-group
Опис
--------
Діапазон (Range) — це абстрактний базовий клас для елементів керування, що представляють число в діапазоні, використовуючи налаштований розмір :ref:`step<class_Range_property_step>` та :ref:`page<class_Range_property_page>`. Див., наприклад, :ref:`ScrollBar<class_ScrollBar>` та :ref:`Slider<class_Slider>` для прикладів вузлів вищого рівня, що використовують Діапазон (Range).
.. rst-class:: classref-reftable-group
Властивості
----------------------
.. table::
:widths: auto
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`allow_greater<class_Range_property_allow_greater>` | ``false`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`allow_lesser<class_Range_property_allow_lesser>` | ``false`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`exp_edit<class_Range_property_exp_edit>` | ``false`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`max_value<class_Range_property_max_value>` | ``100.0`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`min_value<class_Range_property_min_value>` | ``0.0`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`page<class_Range_property_page>` | ``0.0`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`ratio<class_Range_property_ratio>` | |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`rounded<class_Range_property_rounded>` | ``false`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| |bitfield|\[:ref:`SizeFlags<enum_Control_SizeFlags>`\] | size_flags_vertical | ``0`` (overrides :ref:`Control<class_Control_property_size_flags_vertical>`) |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`step<class_Range_property_step>` | ``0.01`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
| :ref:`float<class_float>` | :ref:`value<class_Range_property_value>` | ``0.0`` |
+--------------------------------------------------------+----------------------------------------------------------+------------------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
Методи
------------
.. table::
:widths: auto
+--------+-------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_value_changed<class_Range_private_method__value_changed>`\ (\ new_value\: :ref:`float<class_float>`\ ) |virtual| |
+--------+-------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_value_no_signal<class_Range_method_set_value_no_signal>`\ (\ value\: :ref:`float<class_float>`\ ) |
+--------+-------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`share<class_Range_method_share>`\ (\ with\: :ref:`Node<class_Node>`\ ) |
+--------+-------------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`unshare<class_Range_method_unshare>`\ (\ ) |
+--------+-------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Сигнали
--------------
.. _class_Range_signal_changed:
.. rst-class:: classref-signal
**changed**\ (\ ) :ref:`🔗<class_Range_signal_changed>`
Випромінюється, коли :ref:`min_value<class_Range_property_min_value>`, :ref:`max_value<class_Range_property_max_value>`, :ref:`page<class_Range_property_page>`, або :ref:`step<class_Range_property_step>` зміна.
.. rst-class:: classref-item-separator
----
.. _class_Range_signal_value_changed:
.. rst-class:: classref-signal
**value_changed**\ (\ value\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Range_signal_value_changed>`
Викликається, коли змінюється ``значення елемента``. При використанні на :ref:`Slider<class_Slider>` це викликається безперервно під час перетягування (можливо, кожного кадру). Якщо ви виконуєте ресурсоємну операцію у функції, пов'язаній з :ref:`value_changed<class_Range_signal_value_changed>`, розгляньте можливість використання *debouncing* :ref:`Timer<class_Timer>` для рідшого виклику функції.
\ **Примітка:** На відміну від таких сигналів, як :ref:`LineEdit.text_changed<class_LineEdit_signal_text_changed>`, :ref:`value_changed<class_Range_signal_value_changed>` також викликається, коли ``value`` встановлюється безпосередньо через код.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описи властивостей
------------------------------------
.. _class_Range_property_allow_greater:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **allow_greater** = ``false`` :ref:`🔗<class_Range_property_allow_greater>`
.. rst-class:: classref-property-setget
- |void| **set_allow_greater**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_greater_allowed**\ (\ )
Якщо ``true``, :ref:`value<class_Range_property_value>` може бути більшим за :ref:`max_value<class_Range_property_max_value>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_allow_lesser:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **allow_lesser** = ``false`` :ref:`🔗<class_Range_property_allow_lesser>`
.. rst-class:: classref-property-setget
- |void| **set_allow_lesser**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_lesser_allowed**\ (\ )
Якщо ``true``, :ref:`value<class_Range_property_value>` може бути меншим за :ref:`min_value<class_Range_property_min_value>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_exp_edit:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **exp_edit** = ``false`` :ref:`🔗<class_Range_property_exp_edit>`
.. rst-class:: classref-property-setget
- |void| **set_exp_ratio**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_ratio_exp**\ (\ )
Якщо ``true``, і :ref:`min_value<class_Range_property_min_value>` більше або дорівнює ``0``, :ref:`value<class_Range_property_value>` буде представлено експоненціально, а не лінійно.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_max_value:
.. rst-class:: classref-property
:ref:`float<class_float>` **max_value** = ``100.0`` :ref:`🔗<class_Range_property_max_value>`
.. rst-class:: classref-property-setget
- |void| **set_max**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_max**\ (\ )
Максимальне значення. Діапазон обмежується, якщо :ref:`value<class_Range_property_value>` більше, ніж :ref:`max_value<class_Range_property_max_value>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_min_value:
.. rst-class:: classref-property
:ref:`float<class_float>` **min_value** = ``0.0`` :ref:`🔗<class_Range_property_min_value>`
.. rst-class:: classref-property-setget
- |void| **set_min**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_min**\ (\ )
Мінімальне значення. Діапазон обмежується, якщо :ref:`value<class_Range_property_value>` менше ніж :ref:`min_value<class_Range_property_min_value>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_page:
.. rst-class:: classref-property
:ref:`float<class_float>` **page** = ``0.0`` :ref:`🔗<class_Range_property_page>`
.. rst-class:: classref-property-setget
- |void| **set_page**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_page**\ (\ )
Розмір сторінки. Використовується переважно для :ref:`ScrollBar<class_ScrollBar>`. Довжина захоплення :ref:`ScrollBar<class_ScrollBar>` — це розмір :ref:`ScrollBar<class_ScrollBar>`, помножений на :ref:`page<class_Range_property_page>` на різницю між :ref:`min_value<class_Range_property_min_value>` і :ref:`max_value<class_Range_property_max_value>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_ratio:
.. rst-class:: classref-property
:ref:`float<class_float>` **ratio** :ref:`🔗<class_Range_property_ratio>`
.. rst-class:: classref-property-setget
- |void| **set_as_ratio**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_as_ratio**\ (\ )
Значення, відображене між 0 та 1.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_rounded:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **rounded** = ``false`` :ref:`🔗<class_Range_property_rounded>`
.. rst-class:: classref-property-setget
- |void| **set_use_rounded_values**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_using_rounded_values**\ (\ )
Якщо ``true``, значення члена :ref:`value<class_Range_property_value>` завжди буде округлено до найближчого цілого числа.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_step:
.. rst-class:: classref-property
:ref:`float<class_float>` **step** = ``0.01`` :ref:`🔗<class_Range_property_step>`
.. rst-class:: classref-property-setget
- |void| **set_step**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_step**\ (\ )
If greater than ``0.0``, :ref:`value<class_Range_property_value>` will always be rounded to a multiple of this property's value above :ref:`min_value<class_Range_property_min_value>`. For example, if :ref:`min_value<class_Range_property_min_value>` is ``0.1`` and step is ``0.2``, then :ref:`value<class_Range_property_value>` is limited to ``0.1``, ``0.3``, ``0.5``, and so on. If :ref:`rounded<class_Range_property_rounded>` is also ``true``, :ref:`value<class_Range_property_value>` will first be rounded to a multiple of this property's value, then rounded to the nearest integer.
.. rst-class:: classref-item-separator
----
.. _class_Range_property_value:
.. rst-class:: classref-property
:ref:`float<class_float>` **value** = ``0.0`` :ref:`🔗<class_Range_property_value>`
.. rst-class:: classref-property-setget
- |void| **set_value**\ (\ value\: :ref:`float<class_float>`\ )
- :ref:`float<class_float>` **get_value**\ (\ )
Поточне значення діапазону. Зміна цієї властивості (навіть через код) призведе до спрацьовування сигналу :ref:`value_changed<class_Range_signal_value_changed>`. Використовуйте :ref:`set_value_no_signal()<class_Range_method_set_value_no_signal>`, якщо хочете цього уникнути.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описи методів
--------------------------
.. _class_Range_private_method__value_changed:
.. rst-class:: classref-method
|void| **_value_changed**\ (\ new_value\: :ref:`float<class_float>`\ ) |virtual| :ref:`🔗<class_Range_private_method__value_changed>`
Викликається, коли значення **Range** змінюється (за тих самих умов, що й :ref:`value_changed<class_Range_signal_value_changed>`).
.. rst-class:: classref-item-separator
----
.. _class_Range_method_set_value_no_signal:
.. rst-class:: classref-method
|void| **set_value_no_signal**\ (\ value\: :ref:`float<class_float>`\ ) :ref:`🔗<class_Range_method_set_value_no_signal>`
Встановлює поточний значення **Range** до вказаного ``value``, без випромінювання сигналу :ref:`value_changed<class_Range_signal_value_changed>`.
.. rst-class:: classref-item-separator
----
.. _class_Range_method_share:
.. rst-class:: classref-method
|void| **share**\ (\ with\: :ref:`Node<class_Node>`\ ) :ref:`🔗<class_Range_method_share>`
Бінде два **Range** разом з будь-якими діапазонами, які раніше згруповані або з них. При зміні всіх членів діапазону, вона буде ділитися новим значенням з усіма іншими діапазонами у своїй групі.
.. rst-class:: classref-item-separator
----
.. _class_Range_method_unshare:
.. rst-class:: classref-method
|void| **unshare**\ (\ ) :ref:`🔗<class_Range_method_unshare>`
Стопи **Range**, щоб поділитися змінами членів з будь-яким іншим.
.. |virtual| replace:: :abbr:`virtual (Зазвичай, цей метод перевизначається користувачем, щоб він мав вплив.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Цей метод не має побічних ефектів. Не змінює ніяку змінну екземпляра об'єкта.)`
.. |vararg| replace:: :abbr:`vararg (Цей метод приймає будь-яке число аргументів після описаних тут.)`
.. |constructor| replace:: :abbr:`constructor (Цей метод використовується для побудови типів.)`
.. |static| replace:: :abbr:`static (Цей метод не потребує екземпляра для виклику, його можна викликати безпосередньо за допомогою назви класу.)`
.. |operator| replace:: :abbr:`operator (Цей метод описує дійсний оператор для взаємодії з цим типом як з лівим операндом.)`
.. |bitfield| replace:: :abbr:`BitField (Це значення є цілим числом, складеним у вигляді бітової маски з наступних прапорів.)`
.. |void| replace:: :abbr:`void (Значення не повертається.)`