wxSlider(3)
π wxSlider π
omg bestie come sit down, this is the Erlang module definition for wxSlider, and it's literally the little slider widget β you know, the one with a handle you pull back and forth to change a value. main character of every settings panel fr fr ποΈβ¨
πΈ NAME πΈ
wxSlider β a slider is a control with a handle which can be pulled back and forth to change the value. that's it, that's the whole vibe. π
π¦ DESCRIPTION π¦
okay so, platform tea first:
- On Windows, the track bar control is used.
- On GTK+, tick marks are only available for version 2.16 and later.
Sliders generate the same events as wxScrollBar, no cap β but in practice the most convenient way to process wxSlider updates is by handling the slider-specific wxEVT_SLIDER event, which carries a wxCommandEvent containing just the latest slider position. chef's kiss π«Ά
β¨ Styles β¨
this class supports the following styles:
wxSL_HORIZONTAL: Displays the slider horizontally (this is the default). the standard girly pop πwxSL_VERTICAL: Displays the slider vertically.wxSL_AUTOTICKS: Displays tick marks (Windows, GTK+ 2.16 and later).wxSL_MIN_MAX_LABELS: Displays minimum, maximum labels (new since wxWidgets 2.9.1).wxSL_VALUE_LABEL: Displays value label (new since wxWidgets 2.9.1).wxSL_LABELS: Displays minimum, maximum and value labels (same aswxSL_VALUE_LABELandwxSL_MIN_MAX_LABELStogether).wxSL_LEFT: Displays ticks on the left and forces the slider to be vertical (Windows and GTK+ 3 only).wxSL_RIGHT: Displays ticks on the right and forces the slider to be vertical.wxSL_TOP: Displays ticks on the top (Windows and GTK+ 3 only).wxSL_BOTTOM: Displays ticks on the bottom (this is the default).wxSL_BOTH: Displays ticks on both sides of the slider. Windows only.wxSL_SELRANGE: Displays a highlighted selection range. Windows only.wxSL_INVERSE: Inverses the minimum and maximum endpoints on the slider. Not compatible withwxSL_SELRANGE. Notice thatwxSL_LEFT,wxSL_TOP,wxSL_RIGHTandwxSL_BOTTOMspecify the position of the slider ticks and that the slider labels, if any, are positioned on the opposite side. So, to have a label on the left side of a vertical slider,wxSL_RIGHTmust be used (or none of these styles at all should be specified as left and top are default positions for the vertical and horizontal sliders respectively).
π The difference between EVT_SCROLL_THUMBRELEASE and EVT_SCROLL_CHANGED π
okay this part matters, don't skip it, iykyk:
The EVT_SCROLL_THUMBRELEASE event is only emitted when actually dragging the thumb using the mouse and releasing it (This EVT_SCROLL_THUMBRELEASE event is also followed by an EVT_SCROLL_CHANGED event).
The EVT_SCROLL_CHANGED event also occurs when using the keyboard to change the thumb position, and when clicking next to the thumb (In all these cases the EVT_SCROLL_THUMBRELEASE event does not happen). In short, the EVT_SCROLL_CHANGED event is triggered when scrolling/ moving has finished independently of the way it had started. Please see the page_samples_widgets ("Slider" page) to see the difference between EVT_SCROLL_THUMBRELEASE and EVT_SCROLL_CHANGED in action.
See:
- Overview events
wxScrollBar
This class is derived, and can use functions, from:
wxControlwxWindowwxEvtHandler
wxWidgets docs: wxSlider
π Events π
Event types emitted from this class:
scroll_topscroll_bottomscroll_lineupscroll_linedownscroll_pageupscroll_pagedownscroll_thumbtrackscroll_thumbreleasescroll_changedscroll_topscroll_bottomscroll_lineupscroll_linedownscroll_pageupscroll_pagedownscroll_thumbtrackscroll_thumbreleasescroll_changedcommand_slider_updated
not me noticing the whole scroll list shows up twice π bestie i checked, that's genuinely how it's written, so i'm keeping both. no editing the source, periodt.
π DATA TYPES π
wxSlider() :: wx:wx_object().
π FUNCTIONS π
β create/7 β
create(This, Parent, Id, Value, MinValue, MaxValue, [Option]) ->
boolean()
when
This :: wxSlider(),
Parent :: wxWindow:wxWindow(),
Id :: integer(),
Value :: integer(),
MinValue :: integer(),
MaxValue :: integer(),
Option ::
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()} |
{validator, wx:wx_object()}.
Used for two-step slider construction.
See new/6 for further details. it's giving "build it now, finish it later" π
β destroy/1 β
destroy(This :: wxSlider()) -> ok.
Destroys the object. bye bestie, it's over π
β getLineSize/1 β
getLineSize(This) -> integer() when This :: wxSlider().
Returns the line size.
See: setLineSize/2
β getMax/1 β
getMax(This) -> integer() when This :: wxSlider().
Gets the maximum slider value.
See:
getMin/1setRange/3
β getMin/1 β
getMin(This) -> integer() when This :: wxSlider().
Gets the minimum slider value.
See:
getMin/1setRange/3
yeahgetMin/1pointing atgetMin/1is a whole self-love moment π that's literally what the page says so i'm not touching it.
β getPageSize/1 β
getPageSize(This) -> integer() when This :: wxSlider().
Returns the page size.
See: setPageSize/2
β getThumbLength/1 β
getThumbLength(This) -> integer() when This :: wxSlider().
Returns the thumb length.
Only for: wxmsw
See: setThumbLength/2
β getValue/1 β
getValue(This) -> integer() when This :: wxSlider().
Gets the current slider value.
See:
getMin/1getMax/1setValue/2
β new/0 β
new() -> wxSlider().
Default constructor. blank slate energy β¨
β new/6 β
new(Parent, Id, Value, MinValue, MaxValue, [Option]) -> wxSlider()
when
Parent :: wxWindow:wxWindow(),
Id :: integer(),
Value :: integer(),
MinValue :: integer(),
MaxValue :: integer(),
Option ::
{pos, {X :: integer(), Y :: integer()}} |
{size, {W :: integer(), H :: integer()}} |
{style, integer()} |
{validator, wx:wx_object()}.
Constructor, creating and showing a slider. glow up included π
See: create/7
β setLineSize/2 β
setLineSize(This, LineSize) -> ok
when This :: wxSlider(), LineSize :: integer().
Sets the line size for the slider.
See: getLineSize/1
β setPageSize/2 β
setPageSize(This, PageSize) -> ok
when This :: wxSlider(), PageSize :: integer().
Sets the page size for the slider.
See: getPageSize/1
β setRange/3 β
setRange(This, MinValue, MaxValue) -> ok
when
This :: wxSlider(),
MinValue :: integer(),
MaxValue :: integer().
Sets the minimum and maximum slider values.
See:
getMin/1getMax/1
β setThumbLength/2 β
setThumbLength(This, Len) -> ok
when This :: wxSlider(), Len :: integer().
Sets the slider thumb length.
Only for: wxmsw
See: getThumbLength/1
β setValue/2 β
setValue(This, Value) -> ok
when This :: wxSlider(), Value :: integer().
Sets the slider position.
aaaand that's the whole page bestie, you ate it ππ if you're reading this at 3am debugging a slider that won't slide, i love you, go drink water π«Ά
this lil love letter to wxSlider(3) came to you from Ericsson AB, living in the wx 2.6 era β so iconic, so vintage, so slay. bye pookie ππ
π¦ where this page comes from
- ubuntu stonking: erlang-doc 1:29.0.6+dfsg-1 Β· Apache-2.0
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms