Вопрос

Я использую wxGenericDirCtrl, и я хотел бы знать, есть ли способ скрыть каталоги, особенно мне хотелось бы скрыть родственные узлы родительских узлов.

Например, если моя структура каталогов выглядит следующим образом:

+-a
  |
  +-b
  | |
  | +-whatever
  |
  +-c
  | |
  | +-d
  |   |
  |   +-e
  |   |
  |   +-f
  |   
  +-g
    |
    +-whatever

Если мой текущий выбранный каталог - / a / c / d, есть ли какой-нибудь способ скрыть b и g, чтобы дерево выглядело так в моем ctrl:

+-a
  |
  +-c
    |
    +-[d]
      |
      +-e
      |
      +-f

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

Редактировать:Если это имеет значение, я использую wxPython, и пока я тестировал свой код только в linux с использованием серверной части GTK, но я планирую сделать его мультиплатформенным и использовать его в Windows и Mac с использованием собственных серверных частей.

Это было полезно?

Решение

Перечислять / перемещать каталоги в Python очень просто, поэтому я бы рекомендовал попробовать "создать свой собственный", используя один из простых элементов управления деревом (например, TreeCtrl или CustomTreeCtrl).Действительно, должно быть довольно легко вызвать код списка каталогов при расширении некоторого каталога и вернуть результат.

Другие советы

Я не думаю, что это возможно.

Было бы относительно легко добавить эту функциональность к базовому элементу управления wxWidgets на C ++, но поскольку вы используете wxPython, вам также придется перестроить его, что является огромной проблемой.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top