Phoenix Logo

phoenix_title wx.Slider

A slider is a control with a handle which can be pulled back and forth to change the value.

On Windows, the track bar control is used.

Slider generates the same events as wx.ScrollBar but in practice the most convenient way to process wx.Slider updates is by handling the slider-specific wxEVT_SLIDER event which carries wx.CommandEvent containing just the latest slider position.

styles Window Styles

This class supports the following styles:

  • wx.SL_HORIZONTAL: Displays the slider horizontally (this is the default).
  • wx.SL_VERTICAL: Displays the slider vertically.
  • wx.SL_AUTOTICKS: Displays tick marks. Windows only.
  • wx.SL_MIN_MAX_LABELS: Displays minimum, maximum labels (new since wxWidgets 2.9.1).
  • wx.SL_VALUE_LABEL: Displays value label (new since wxWidgets 2.9.1).
  • wx.SL_LABELS: Displays minimum, maximum and value labels (same as wx.SL_VALUE_LABEL and wx.SL_MIN_MAX_LABELS together).
  • wx.SL_LEFT: Displays ticks on the left and forces the slider to be vertical.
  • wx.SL_RIGHT: Displays ticks on the right and forces the slider to be vertical.
  • wx.SL_TOP: Displays ticks on the top.
  • wx.SL_BOTTOM: Displays ticks on the bottom (this is the default).
  • wx.SL_SELRANGE: Allows the user to select a range on the slider. Windows only.
  • wx.SL_INVERSE: Inverses the minimum and maximum endpoints on the slider. Not compatible with wx.SL_SELRANGE.
Notice that
SL_LEFT , SL_TOP , SL_RIGHT and SL_BOTTOM specify the position of the slider ticks in MSW implementation 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, wx.SL_RIGHT must 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).

events Events Emitted by this Class

Handlers bound for the following event types will receive a wx.ScrollEvent parameter.

  • EVT_SCROLL: Process all scroll events.
  • EVT_SCROLL_TOP: Process wxEVT_SCROLL_TOP scroll-to-top events (minimum position).
  • EVT_SCROLL_BOTTOM: Process wxEVT_SCROLL_BOTTOM scroll-to-bottom events (maximum position).
  • EVT_SCROLL_LINEUP: Process wxEVT_SCROLL_LINEUP line up events.
  • EVT_SCROLL_LINEDOWN: Process wxEVT_SCROLL_LINEDOWN line down events.
  • EVT_SCROLL_PAGEUP: Process wxEVT_SCROLL_PAGEUP page up events.
  • EVT_SCROLL_PAGEDOWN: Process wxEVT_SCROLL_PAGEDOWN page down events.
  • EVT_SCROLL_THUMBTRACK: Process wxEVT_SCROLL_THUMBTRACK thumbtrack events (frequent events sent as the user drags the thumbtrack).
  • EVT_SCROLL_THUMBRELEASE: Process wxEVT_SCROLL_THUMBRELEASE thumb release events.
  • EVT_SCROLL_CHANGED: Process wxEVT_SCROLL_CHANGED end of scrolling events (MSW only).
  • EVT_COMMAND_SCROLL: Process all scroll events.
  • EVT_COMMAND_SCROLL_TOP: Process wxEVT_SCROLL_TOP scroll-to-top events (minimum position).
  • EVT_COMMAND_SCROLL_BOTTOM: Process wxEVT_SCROLL_BOTTOM scroll-to-bottom events (maximum position).
  • EVT_COMMAND_SCROLL_LINEUP: Process wxEVT_SCROLL_LINEUP line up events.
  • EVT_COMMAND_SCROLL_LINEDOWN: Process wxEVT_SCROLL_LINEDOWN line down events.
  • EVT_COMMAND_SCROLL_PAGEUP: Process wxEVT_SCROLL_PAGEUP page up events.
  • EVT_COMMAND_SCROLL_PAGEDOWN: Process wxEVT_SCROLL_PAGEDOWN page down events.
  • EVT_COMMAND_SCROLL_THUMBTRACK: Process wxEVT_SCROLL_THUMBTRACK thumbtrack events (frequent events sent as the user drags the thumbtrack).
  • EVT_COMMAND_SCROLL_THUMBRELEASE: Process wxEVT_SCROLL_THUMBRELEASE thumb release events.
  • EVT_COMMAND_SCROLL_CHANGED: Process wxEVT_SCROLL_CHANGED end of scrolling events (MSW only).
  • EVT_SLIDER: Process wxEVT_SLIDER which is generated after any change of wx.Slider position in addition to one of the events above. Notice that the handler of this event receives a wx.CommandEvent as argument and not wx.ScrollEvent, as all the other handlers.

phoenix_title The difference between EVT_SCROLL_THUMBRELEASE and EVT_SCROLL_CHANGED

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 widgets sample (“Slider” page) to see the difference between EVT_SCROLL_THUMBRELEASE and EVT_SCROLL_CHANGED in action.


class_hierarchy Class Hierarchy

Inheritance diagram for class Slider:

appearance Control Appearance


wxMSW

wxMSW

wxMAC

wxMAC

wxGTK

wxGTK


method_summary Methods Summary

__init__ Default constructor.
ClearSel Clears the selection, for a slider with the wx.SL_SELRANGE style.
ClearTicks Clears the ticks.
Create Used for two-step slider construction.
GetLineSize Returns the line size.
GetMax Gets the maximum slider value.
GetMin Gets the minimum slider value.
GetPageSize Returns the page size.
GetRange  
GetSelEnd Returns the selection end point.
GetSelStart Returns the selection start point.
GetThumbLength Returns the thumb length.
GetTickFreq Returns the tick frequency.
GetValue Gets the current slider value.
SetLineSize Sets the line size for the slider.
SetMax Sets the maximum slider value.
SetMin Sets the minimum slider value.
SetPageSize Sets the page size for the slider.
SetRange Sets the minimum and maximum slider values.
SetSelection Sets the selection.
SetThumbLength Sets the slider thumb length.
SetTick Sets a tick position.
SetTickFreq Sets the tick mark frequency and position.
SetValue Sets the slider position.

api Class API



class wx.Slider(Control)

Possible constructors:

Slider()

Slider(parent, id=ID_ANY, value=0, minValue=0, maxValue=100,
       pos=DefaultPosition, size=DefaultSize, style=SL_HORIZONTAL,
       validator=DefaultValidator, name=SliderNameStr)

A slider is a control with a handle which can be pulled back and forth to change the value.


Methods



__init__(self, *args, **kw)

overload Overloaded Implementations:



__init__ (self)

Default constructor.



__init__ (self, parent, id=ID_ANY, value=0, minValue=0, maxValue=100, pos=DefaultPosition, size=DefaultSize, style=SL_HORIZONTAL, validator=DefaultValidator, name=SliderNameStr)

Constructor, creating and showing a slider.

Parameters:
  • parent (wx.Window) – Parent window. Must not be None.
  • id (wx.WindowID) – Window identifier. The value wx.ID_ANY indicates a default value.
  • value (int) – Initial position for the slider.
  • minValue (int) – Minimum slider position.
  • maxValue (int) – Maximum slider position.
  • pos (wx.Point) – Window position. If wx.DefaultPosition is specified then a default position is chosen.
  • size (wx.Size) – Window size. If wx.DefaultSize is specified then a default size is chosen.
  • style (long) – Window style. See wx.Slider.
  • validator (wx.Validator) – Window validator.
  • name (string) – Window name.

See also

Create , wx.Validator





ClearSel(self)

Clears the selection, for a slider with the wx.SL_SELRANGE style.

Availability

Only available for MSW.



ClearTicks(self)

Clears the ticks.

Availability

Only available for MSW.



Create(self, parent, id=ID_ANY, value=0, minValue=0, maxValue=100, point=DefaultPosition, size=DefaultSize, style=SL_HORIZONTAL, validator=DefaultValidator, name=SliderNameStr)

Used for two-step slider construction.

See wx.Slider for further details.

Parameters:
  • parent (wx.Window) –
  • id (wx.WindowID) –
  • value (int) –
  • minValue (int) –
  • maxValue (int) –
  • point (wx.Point) –
  • size (wx.Size) –
  • style (long) –
  • validator (wx.Validator) –
  • name (string) –
Return type:

bool



GetLineSize(self)

Returns the line size.

Return type:int

See also

SetLineSize



GetMax(self)

Gets the maximum slider value.

Return type:int

See also

GetMin , SetRange



GetMin(self)

Gets the minimum slider value.

Return type:int

See also

GetMin , SetRange



GetPageSize(self)

Returns the page size.

Return type:int

See also

SetPageSize



GetRange(self)


GetSelEnd(self)

Returns the selection end point.

Return type:int

Availability

Only available for MSW.



GetSelStart(self)

Returns the selection start point.

Return type:int

Availability

Only available for MSW.

See also

GetSelEnd , SetSelection



GetThumbLength(self)

Returns the thumb length.

Return type:int

Availability

Only available for MSW.

See also

SetThumbLength



GetTickFreq(self)

Returns the tick frequency.

Return type:int

Availability

Only available for MSW.

See also

SetTickFreq



GetValue(self)

Gets the current slider value.

Return type:int

See also

GetMin , GetMax , SetValue



SetLineSize(self, lineSize)

Sets the line size for the slider.

Parameters:lineSize (int) – The number of steps the slider moves when the user moves it up or down a line.

See also

GetLineSize



SetMax(self, maxValue)

Sets the maximum slider value.

Parameters:maxValue (int) – The new top end of the slider range.

See also

GetMax , SetRange



SetMin(self, minValue)

Sets the minimum slider value.

Parameters:minValue (int) – The new bottom end of the slider range.

See also

GetMin , SetRange



SetPageSize(self, pageSize)

Sets the page size for the slider.

Parameters:pageSize (int) – The number of steps the slider moves when the user pages up or down.

See also

GetPageSize



SetRange(self, minValue, maxValue)

Sets the minimum and maximum slider values.

Parameters:
  • minValue (int) –
  • maxValue (int) –

See also

GetMin , GetMax



SetSelection(self, startPos, endPos)

Sets the selection.

Parameters:
  • startPos (int) – The selection start position.
  • endPos (int) – The selection end position.

MSW port.

Availability

Only available for MSW.

See also

GetSelStart , GetSelEnd



SetThumbLength(self, len)

Sets the slider thumb length.

Parameters:len (int) – The thumb length.

MSW port.

Availability

Only available for MSW.

See also

GetThumbLength



SetTick(self, tickPos)

Sets a tick position.

Parameters:tickPos (int) – The tick position.

MSW port.

Availability

Only available for MSW.

See also

SetTickFreq



SetTickFreq(self, n)

Sets the tick mark frequency and position.

Parameters:n (int) – Frequency. For example, if the frequency is set to two, a tick mark is displayed for every other increment in the slider’s range.

MSW port.

Availability

Only available for MSW.

See also

GetTickFreq



SetValue(self, value)

Sets the slider position.

Parameters:value (int) – The slider position.

Properties



LineSize

See GetLineSize and SetLineSize



Max

See GetMax and SetMax



Min

See GetMin and SetMin



PageSize

See GetPageSize and SetPageSize



Range

See GetRange



SelEnd

See GetSelEnd



SelStart

See GetSelStart



ThumbLength

See GetThumbLength and SetThumbLength



TickFreq

See GetTickFreq and SetTickFreq



Value

See GetValue and SetValue