Иерархическое проверенное древовидное управление с флажками трех состояний в wxPython? - PullRequest
4 голосов
/ 31 марта 2010

Согласно названию, возможно ли это?

Под тройным состоянием я подразумеваю, что родительский узел:

  • Проверено, если все проверены дети
  • Не отмечено, если все дети не отмечены
  • Серый / Заполнено, если некоторые дети проверены

Я использовал их ранее в C #, но не могу найти эквивалентный элемент управления / реализацию для wxPython.

Ответы [ 2 ]

3 голосов
/ 19 сентября 2011

Я пытался сделать то же самое с CustomTreeCtrl, и он поддерживает флажки трех состояний.

При создании рута

self.root= self.tree.AddRoot("root node",ct_type=1)

или дочерний узел,

child= self.tree.AppendItem(parent,"child",ct_type=1)

возвращает объект GenericTreeItem, для которого вы можете изменить атрибут _is3State на True с помощью

self.root.Set3State(True)

или

child.Set3State(True)
2 голосов
/ 01 апреля 2010

Вы смотрели на wx.lib.agw.CustomTreeCtrl ?

Я не уверен, что он выполняет три состояния "из коробки", но он написан на Python, поэтому его легко расширить.

...