number
A kind of input that handles numbers.
Properties¶
| Name | Type | Default | Description |
|---|---|---|---|
(★) |
Anydynamic |
The numerical value represented by this control. |
|
label |
str |
None | The label associated with the number field. |
step |
Union[int, float]dynamic |
1 | The increment or decrement applied to the value when the user clicks the arrow buttons. |
step_multiplier |
Union[int, float]dynamic |
10 | The factor by which the step value is multiplied when the user holds the Shift key while clicking the arrow buttons. |
min |
Union[int, float]dynamic |
The minimum acceptable value. |
|
max |
Union[int, float]dynamic |
The maximum acceptable value. |
|
action_on_blur |
bool |
False | If True, the |
change_delay |
int |
App config | The minimum interval (in milliseconds) between two consecutive calls to the |
on_action |
Union[str, Callable] |
A function or the name of a function that is triggered when a specific key is pressed.
|
|
action_keys |
str |
"Enter" | A semicolon-separated list of keys that can trigger the |
width |
Union[str, int] |
None | The width of the element, in CSS units. |
on_change |
Union[str, Callable] |
A function or the name of a function that is triggered when the value changes.
|
|
propagate |
bool |
App config | Determines whether the control's value is automatically reflected in the bound application variable. |
active |
booldynamic |
True | Indicates if this element is active. |
id |
str |
The identifier assigned to the rendered HTML component. |
|
properties |
dict[str, Any] |
A dictionary of additional properties that can be set to the element. |
|
class_name |
strdynamic |
A space-separated list of CSS class names to be applied to the generated HTML element. |
|
hover_text |
strdynamic |
The text that is displayed when the user hovers over the element. |
(★)value is the default property for this visual element.
Usage¶
Simple¶
The number control provides a dedicated field for entering numerical values. It includes up and
down arrows, allowing users to adjust the value easily without needing to type.
Let’s say you have a numerical variable that you want users to modify:
value = 50
You can bind this variable to a number control with the following definition:
definition:
Definition
<|{value}|number|>
<taipy:number>{value}</taipy:number>
import taipy.gui.builder as tgb
...
tgb.number("{value}")
Below is an example of how the control would appear on the page:
Specifying boundaries¶
You can restrict the range of valid inputs by setting the min and max
properties for the number control.
Using the same variable from the previous example, here’s how you can define a number control that
limits the values between 10 and 60:
Definition
<|{value}|number|min=10|max=60|>
<taipy:number min="10" max="60">{value}</taipy:number>
import taipy.gui.builder as tgb
...
tgb.number("{value}", min=10, max=60)
While the visual appearance of the control remains the same, users will only be able to input values within the specified range.
Setting the increment step¶
You can define how much the value changes when the up or down arrows are pressed by setting the step property.
Using the same variable from the previous example, here’s how you can define a number control
where the value increases or decreases by 2:
Definition
<|{value}|number|step=2|>
<taipy:number step="2">{value}</taipy:number>
import taipy.gui.builder as tgb
...
tgb.number("{value}", step=2)
Although the appearance of the control remains unchanged, pressing the up or down arrow will now increment or decrement the value by 2.
Styling¶
All the number controls are generated with the "taipy-number" CSS class. You can use this class name to select the number controls on your page and apply style.
Stylekit support¶
The Stylekit provides a specific class that you can use to style number controls:
- fullwidth
If a number control uses the fullwidth class, then it uses the whole available horizontal space.