Создание wxSlider с диапазоном в Linux

Я пытаюсь создать слайдер с возможностью выбора диапазона с помощью wxSlider в Python. Он имеет необязательный параметр диапазона, но проблема заключается в следующем:

SL_SELRANGE: Позволяет пользователю выбирать диапазон на ползунке. Только Windows.

И я использую Linux. Я думал, что могу подклассифицировать wxSlider и заставить его работать в Linux, или самостоятельно создать собственный виджет. Проблема в том, что я не уверен, как обойти любой вариант. Любые идеи / указатели / указывающие на меня в правильном направлении, будут оценены.

Я попробовал что-то вроде:

range_slider = wx.Slider(parent, wx.ID_ANY, 0, 0, 100, style=wx.SL_HORIZONTAL | wx.SL_LABELS | wx.SL_SELRANGE) 

но «SL_SELRANGE» ничего не делает в Linux (должен содержать две ручки, выбирать диапазон).

2 Solutions collect form web for “Создание wxSlider с диапазоном в Linux”

У вас может быть два ползунка; тот, который подтолкнет другого, чтобы он остался ниже, и один останется выше?

Я знаю, что это не одно и то же, извините, но это вариант. Поэтому, когда когда-либо self.minSlider перемещается, вы связываете wx.EVT_SCROLL с функцией, которая будет делать что-то вроде:

 self.minSlider.Bind(wx.EVT_SCROLL, self.respondSliderChange()) def respondSliderChange(self): if self.minSlider.GetValue() >= self.maxSlider.GetValue(): self.maxSlider.SetValue(self.minSlider.GetValue()+1) 

и наоборот для maxSlider.

Кроме того, вы можете посмотреть, как создать пользовательский виджет.

Здесь описано что-то связанное.

В двух словах идея состоит в том, чтобы нарисовать коробку и цветную часть ее, чтобы представлять ваш диапазон. Слева, где ваш пользователь щелкнул левой кнопкой мыши, и справа, где пользователь щелкнул правой кнопкой мыши.

Вместо коробки и раскраски вы могли бы нарисовать некоторые маркеры на линии:

 --------[-----------]-- 
  • Python ImportError: нет модуля с именем wx
  • Каковы существующие разработчики Python WxWidgets с открытым исходным кодом?
  • Сделайте снимок экрана с открытым сайтом в скрипте python
  • Как добавить контур границы к виджету?
  • Python WX - возврат пользовательского ввода из wx-диалога
  • Как сделать wx.TextEntryDialog более крупным и изменяемым по размеру
  • Невозможно правильно использовать wx.NotificationMessage с помощью wxPython
  • wxpython захватывает события клавиатуры в wx.Frame
  • Python - лучший язык программирования в мире.