Files
godot-docs-l10n/classes/it/class_basebutton.rst
2025-09-30 13:31:55 +02:00

472 lines
22 KiB
ReStructuredText

:github_url: hide
.. _class_BaseButton:
BaseButton
==========
**Eredita:** :ref:`Control<class_Control>` **<** :ref:`CanvasItem<class_CanvasItem>` **<** :ref:`Node<class_Node>` **<** :ref:`Object<class_Object>`
**Ereditato da:** :ref:`Button<class_Button>`, :ref:`LinkButton<class_LinkButton>`, :ref:`TextureButton<class_TextureButton>`
Classe di base astratta per i pulsanti della GUI.
.. rst-class:: classref-introduction-group
Descrizione
----------------------
**BaseButton** è una classe di base astratta per pulsanti della GUI. Da solo non visualizza nulla.
.. rst-class:: classref-reftable-group
Proprietà
------------------
.. table::
:widths: auto
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`ActionMode<enum_BaseButton_ActionMode>` | :ref:`action_mode<class_BaseButton_property_action_mode>` | ``1`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`ButtonGroup<class_ButtonGroup>` | :ref:`button_group<class_BaseButton_property_button_group>` | |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| |bitfield|\[:ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`\] | :ref:`button_mask<class_BaseButton_property_button_mask>` | ``1`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`button_pressed<class_BaseButton_property_button_pressed>` | ``false`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`disabled<class_BaseButton_property_disabled>` | ``false`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`FocusMode<enum_Control_FocusMode>` | focus_mode | ``2`` (overrides :ref:`Control<class_Control_property_focus_mode>`) |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`keep_pressed_outside<class_BaseButton_property_keep_pressed_outside>` | ``false`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`Shortcut<class_Shortcut>` | :ref:`shortcut<class_BaseButton_property_shortcut>` | |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`shortcut_feedback<class_BaseButton_property_shortcut_feedback>` | ``true`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`shortcut_in_tooltip<class_BaseButton_property_shortcut_in_tooltip>` | ``true`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` | ``false`` |
+-------------------------------------------------------------------------+-----------------------------------------------------------------------------+---------------------------------------------------------------------+
.. rst-class:: classref-reftable-group
Metodi
------------
.. table::
:widths: auto
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_pressed<class_BaseButton_private_method__pressed>`\ (\ ) |virtual| |
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`_toggled<class_BaseButton_private_method__toggled>`\ (\ toggled_on\: :ref:`bool<class_bool>`\ ) |virtual| |
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
| :ref:`DrawMode<enum_BaseButton_DrawMode>` | :ref:`get_draw_mode<class_BaseButton_method_get_draw_mode>`\ (\ ) |const| |
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`is_hovered<class_BaseButton_method_is_hovered>`\ (\ ) |const| |
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
| |void| | :ref:`set_pressed_no_signal<class_BaseButton_method_set_pressed_no_signal>`\ (\ pressed\: :ref:`bool<class_bool>`\ ) |
+-------------------------------------------+----------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Segnali
--------------
.. _class_BaseButton_signal_button_down:
.. rst-class:: classref-signal
**button_down**\ (\ ) :ref:`🔗<class_BaseButton_signal_button_down>`
Emesso quando il pulsante comincia a essere premuto.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_signal_button_up:
.. rst-class:: classref-signal
**button_up**\ (\ ) :ref:`🔗<class_BaseButton_signal_button_up>`
Emesso quando il pulsante smette di essere premuto.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_signal_pressed:
.. rst-class:: classref-signal
**pressed**\ (\ ) :ref:`🔗<class_BaseButton_signal_pressed>`
Emesso quando il pulsante viene commutato o premuto. Questo è su :ref:`button_down<class_BaseButton_signal_button_down>` se :ref:`action_mode<class_BaseButton_property_action_mode>` è :ref:`ACTION_MODE_BUTTON_PRESS<class_BaseButton_constant_ACTION_MODE_BUTTON_PRESS>` e su :ref:`button_up<class_BaseButton_signal_button_up>` altrimenti.
Se hai bisogno di conoscere lo stato di pressione del pulsante (e :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è attivo), usa invece :ref:`toggled<class_BaseButton_signal_toggled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_signal_toggled:
.. rst-class:: classref-signal
**toggled**\ (\ toggled_on\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_BaseButton_signal_toggled>`
Emesso quando il pulsante è stato appena commutato tra lo stato premuto e lo stato normale (solo se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è attivo). Il nuovo stato è contenuto nell'argomento ``toggled_on``.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Enumerazioni
------------------------
.. _enum_BaseButton_DrawMode:
.. rst-class:: classref-enumeration
enum **DrawMode**: :ref:`🔗<enum_BaseButton_DrawMode>`
.. _class_BaseButton_constant_DRAW_NORMAL:
.. rst-class:: classref-enumeration-constant
:ref:`DrawMode<enum_BaseButton_DrawMode>` **DRAW_NORMAL** = ``0``
Lo stato normale (ovvero non premuto, non passato dal mouse, non attivato e abilitato) dei pulsanti.
.. _class_BaseButton_constant_DRAW_PRESSED:
.. rst-class:: classref-enumeration-constant
:ref:`DrawMode<enum_BaseButton_DrawMode>` **DRAW_PRESSED** = ``1``
Lo stato dei pulsanti è premuto.
.. _class_BaseButton_constant_DRAW_HOVER:
.. rst-class:: classref-enumeration-constant
:ref:`DrawMode<enum_BaseButton_DrawMode>` **DRAW_HOVER** = ``2``
Lo stato dei pulsanti che hanno il cursore sopra.
.. _class_BaseButton_constant_DRAW_DISABLED:
.. rst-class:: classref-enumeration-constant
:ref:`DrawMode<enum_BaseButton_DrawMode>` **DRAW_DISABLED** = ``3``
Lo stato dei pulsanti è disattivato.
.. _class_BaseButton_constant_DRAW_HOVER_PRESSED:
.. rst-class:: classref-enumeration-constant
:ref:`DrawMode<enum_BaseButton_DrawMode>` **DRAW_HOVER_PRESSED** = ``4``
Lo stato dei pulsanti sono sia con il cursore sopra e premuto.
.. rst-class:: classref-item-separator
----
.. _enum_BaseButton_ActionMode:
.. rst-class:: classref-enumeration
enum **ActionMode**: :ref:`🔗<enum_BaseButton_ActionMode>`
.. _class_BaseButton_constant_ACTION_MODE_BUTTON_PRESS:
.. rst-class:: classref-enumeration-constant
:ref:`ActionMode<enum_BaseButton_ActionMode>` **ACTION_MODE_BUTTON_PRESS** = ``0``
Richiede solo una pressione per considerare il pulsante come cliccato.
.. _class_BaseButton_constant_ACTION_MODE_BUTTON_RELEASE:
.. rst-class:: classref-enumeration-constant
:ref:`ActionMode<enum_BaseButton_ActionMode>` **ACTION_MODE_BUTTON_RELEASE** = ``1``
Richiedere una pressione e un successivo rilascio prima di considerare il pulsante come cliccato.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descrizioni delle proprietà
------------------------------------------------------
.. _class_BaseButton_property_action_mode:
.. rst-class:: classref-property
:ref:`ActionMode<enum_BaseButton_ActionMode>` **action_mode** = ``1`` :ref:`🔗<class_BaseButton_property_action_mode>`
.. rst-class:: classref-property-setget
- |void| **set_action_mode**\ (\ value\: :ref:`ActionMode<enum_BaseButton_ActionMode>`\ )
- :ref:`ActionMode<enum_BaseButton_ActionMode>` **get_action_mode**\ (\ )
Determina quando il pulsante viene considerato cliccato.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_button_group:
.. rst-class:: classref-property
:ref:`ButtonGroup<class_ButtonGroup>` **button_group** :ref:`🔗<class_BaseButton_property_button_group>`
.. rst-class:: classref-property-setget
- |void| **set_button_group**\ (\ value\: :ref:`ButtonGroup<class_ButtonGroup>`\ )
- :ref:`ButtonGroup<class_ButtonGroup>` **get_button_group**\ (\ )
Il :ref:`ButtonGroup<class_ButtonGroup>` associato al pulsante. Da non confondere con i gruppi di nodi.
\ **Nota:** Il pulsante verrà configurato come pulsante di opzione se gli viene assegnato un :ref:`ButtonGroup<class_ButtonGroup>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_button_mask:
.. rst-class:: classref-property
|bitfield|\[:ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`\] **button_mask** = ``1`` :ref:`🔗<class_BaseButton_property_button_mask>`
.. rst-class:: classref-property-setget
- |void| **set_button_mask**\ (\ value\: |bitfield|\[:ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`\]\ )
- |bitfield|\[:ref:`MouseButtonMask<enum_@GlobalScope_MouseButtonMask>`\] **get_button_mask**\ (\ )
Maschera binaria per scegliere a quali pulsanti del mouse questo pulsante risponderà.
Per consentire sia il clic sinistro sia il clic destro, usa ``MOUSE_BUTTON_MASK_LEFT | MOUSE_BUTTON_MASK_RIGHT``.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_button_pressed:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **button_pressed** = ``false`` :ref:`🔗<class_BaseButton_property_button_pressed>`
.. rst-class:: classref-property-setget
- |void| **set_pressed**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_pressed**\ (\ )
Se ``true``, lo stato del pulsante è premuto. Significa che il pulsante è premuto o commutato (se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è attivo). Funziona solo se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è ``true``.
\ **Nota:** Cambiando il valore di :ref:`button_pressed<class_BaseButton_property_button_pressed>` verrà emesso :ref:`toggled<class_BaseButton_signal_toggled>`. Se si desidera cambiare lo stato di pressione senza emettere quel segnale, usa :ref:`set_pressed_no_signal()<class_BaseButton_method_set_pressed_no_signal>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_disabled:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **disabled** = ``false`` :ref:`🔗<class_BaseButton_property_disabled>`
.. rst-class:: classref-property-setget
- |void| **set_disabled**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_disabled**\ (\ )
Se ``true``, il pulsante è disabilitato e non può essere cliccato o commutato.
\ **Nota:** Se il pulsante viene disattivato mentre è tenuto premuto, verrà emesso :ref:`button_up<class_BaseButton_signal_button_up>` .
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_keep_pressed_outside:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **keep_pressed_outside** = ``false`` :ref:`🔗<class_BaseButton_property_keep_pressed_outside>`
.. rst-class:: classref-property-setget
- |void| **set_keep_pressed_outside**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_keep_pressed_outside**\ (\ )
Se ``true``, il pulsante rimane premuto quando si sposta il cursore fuori dal pulsante mentre lo si preme.
\ **Nota:** Questa proprietà influisce solo sull'aspetto visivo del pulsante. I segnali saranno emessi nello stesso momento a prescindere dal valore di questa proprietà.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_shortcut:
.. rst-class:: classref-property
:ref:`Shortcut<class_Shortcut>` **shortcut** :ref:`🔗<class_BaseButton_property_shortcut>`
.. rst-class:: classref-property-setget
- |void| **set_shortcut**\ (\ value\: :ref:`Shortcut<class_Shortcut>`\ )
- :ref:`Shortcut<class_Shortcut>` **get_shortcut**\ (\ )
La scorciatoia associata al pulsante.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_shortcut_feedback:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shortcut_feedback** = ``true`` :ref:`🔗<class_BaseButton_property_shortcut_feedback>`
.. rst-class:: classref-property-setget
- |void| **set_shortcut_feedback**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_shortcut_feedback**\ (\ )
Se ``true``, il pulsante verrà evidenziato per un breve periodo di tempo quando la sua scorciatoia viene attivata. Se ``false`` e :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è ``false``, la scorciatoia si attiverà senza alcun feedback visivo.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_shortcut_in_tooltip:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **shortcut_in_tooltip** = ``true`` :ref:`🔗<class_BaseButton_property_shortcut_in_tooltip>`
.. rst-class:: classref-property-setget
- |void| **set_shortcut_in_tooltip**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_shortcut_in_tooltip_enabled**\ (\ )
Se ``true``, il pulsante aggiungerà informazioni sulla sua scorciatoia nel tooltip.
\ **Nota:** Questa proprietà non fa nulla quando il controllo del tooltip viene personalizzato attraverso :ref:`Control._make_custom_tooltip()<class_Control_private_method__make_custom_tooltip>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_property_toggle_mode:
.. rst-class:: classref-property
:ref:`bool<class_bool>` **toggle_mode** = ``false`` :ref:`🔗<class_BaseButton_property_toggle_mode>`
.. rst-class:: classref-property-setget
- |void| **set_toggle_mode**\ (\ value\: :ref:`bool<class_bool>`\ )
- :ref:`bool<class_bool>` **is_toggle_mode**\ (\ )
Se ``true``, il pulsante è in modalità di commutazione. Fa invertire lo stato del pulsante da premuto a non premuto ogni volta che si clicca sulla sua area.
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Descrizioni dei metodi
--------------------------------------------
.. _class_BaseButton_private_method__pressed:
.. rst-class:: classref-method
|void| **_pressed**\ (\ ) |virtual| :ref:`🔗<class_BaseButton_private_method__pressed>`
Chiamato quando il pulsante viene premuto. Se hai bisogno di conoscere lo stato di pressione del pulsante (e se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è attivo), usa invece :ref:`_toggled()<class_BaseButton_private_method__toggled>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_private_method__toggled:
.. rst-class:: classref-method
|void| **_toggled**\ (\ toggled_on\: :ref:`bool<class_bool>`\ ) |virtual| :ref:`🔗<class_BaseButton_private_method__toggled>`
Chiamato quando il pulsante è commutato (solo se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è attivo).
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_method_get_draw_mode:
.. rst-class:: classref-method
:ref:`DrawMode<enum_BaseButton_DrawMode>` **get_draw_mode**\ (\ ) |const| :ref:`🔗<class_BaseButton_method_get_draw_mode>`
Restituisce lo stato visivo utilizzato per disegnare il pulsante. Ciò è utile principalmente quando si implementa il proprio codice di disegno sovrascrivendo _draw() o collegandosi al segnale "draw". Lo stato visivo del pulsante è definito dall'enumerazione :ref:`DrawMode<enum_BaseButton_DrawMode>`.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_method_is_hovered:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **is_hovered**\ (\ ) |const| :ref:`🔗<class_BaseButton_method_is_hovered>`
Restituisce ``true`` se il mouse è entrato nel pulsante e non lo ha ancora lasciato.
.. rst-class:: classref-item-separator
----
.. _class_BaseButton_method_set_pressed_no_signal:
.. rst-class:: classref-method
|void| **set_pressed_no_signal**\ (\ pressed\: :ref:`bool<class_bool>`\ ) :ref:`🔗<class_BaseButton_method_set_pressed_no_signal>`
Cambia lo stato :ref:`button_pressed<class_BaseButton_property_button_pressed>` del pulsante, senza emettere :ref:`toggled<class_BaseButton_signal_toggled>`. Da usare quando si desidera solo cambiare lo stato del pulsante senza inviare l'evento premuto (ad esempio quando si inizializza una scena). Funziona solo se :ref:`toggle_mode<class_BaseButton_property_toggle_mode>` è ``true``.
\ **Nota:** Questo metodo non rilascia gli altri pulsanti in :ref:`button_group<class_BaseButton_property_button_group>`.
.. |virtual| replace:: :abbr:`virtual (Questo metodo dovrebbe solitamente essere sovrascritto dall'utente per aver un effetto.)`
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
.. |const| replace:: :abbr:`const (Questo metodo non ha effetti collaterali. Non modifica alcuna variabile appartenente all'istanza.)`
.. |vararg| replace:: :abbr:`vararg (Questo metodo accetta qualsiasi numero di argomenti oltre a quelli descritti qui.)`
.. |constructor| replace:: :abbr:`constructor (Questo metodo è utilizzato per creare un tipo.)`
.. |static| replace:: :abbr:`static (Questo metodo non necessita di alcun'istanza per essere chiamato, quindi può essere chiamato direttamente usando il nome della classe.)`
.. |operator| replace:: :abbr:`operator (Questo metodo descrive un operatore valido da usare con questo tipo come operando di sinistra.)`
.. |bitfield| replace:: :abbr:`BitField (Questo valore è un intero composto da una maschera di bit dei seguenti flag.)`
.. |void| replace:: :abbr:`void (Nessun valore restituito.)`