Как сделать индикатор выполнения с помощью TraitsUI и Qt5?

В прошлом я использовал traitsui.wx.themed_slider_editor.ThemedSliderEditor для создания индикатора выполнения с приложением TraitsUI с бэкэндом wx,

Item("model.progress",
      label="Progress",
      show_label=False,
      style='readonly',
      editor=ThemedSliderEditor(low=0.0,
                                high=1.0,
                                increment=0.05,
                                show_value=False))

Какие есть варианты для индикатора выполнения с серверной частью QT5? Я вижу, что это https://github.com/enthought/traitsui/blob/master/traitsui/qt4/progress_editor.py, но, похоже, для Qt4. Так что я не слишком уверен, как продолжить?


person Daniel Farrell    schedule 17.01.2019    source источник


Ответы (1)


Qt5 должен поддерживаться. См. https://github.com/enthought/traitsui/blob/master/CHANGES.txt. Если у вас возникли проблемы с этим, пожалуйста, откройте вопрос на GH.


Обновлять:

Попробуйте что-то вроде этого (частично, не проверено):

from traitsui.editors import ProgressEditor
(other imports etc)...

class ProgressDialog(HasTraits):
    progress = Int
    view = View(Item('progress', show_label=False,
                     editor=ProgressEditor(min=0, max=100)),
                title='Progress'
                )
person Jonathan March    schedule 17.01.2019
comment
Хорошо, так что просто используйте traitsui.qt4.progress_editor? У вас есть пример использования этого редактора? - person Daniel Farrell; 17.01.2019
comment
Насколько я знаю, нет, но только что обновил ответ с предложенным подходом. - person Jonathan March; 19.01.2019
comment
В настоящее время это не работает с QT github.com/enthought/traitsui/issues/487. - person Daniel Farrell; 21.01.2019