То, что я пытаюсь сделать, - это иметь таблицу, которая не выглядит редактируемой напрямую, но может быть отредактирована в каком-то виджете вне таблицы. То есть выбранный узел может быть отредактирован здесь, и все узлы используют один и тот же редактор, потому что я хочу, чтобы он всегда отображался.
Я попытался создать подкласс QItemDelegate и просто вернуть экземпляр QTextEdit, который у меня уже есть, например:
class Delegate extends QItemDelegate {
@Override
public QWidget createEditor(QWidget parent, QStyleOptionViewItem option, QModelIndex index) {
return qtextEdit;
}
}
, который работает, за исключением того, что когда вы выходите из редактора, он уничтожается. Может быть, делегат не должен использоваться таким образом. Так как же мне этого добиться?
(ps. Я использую jambi, но код c ++ в порядке)