Qt: TreeView default delegate mit setPlaceholderText("")
-
Hallo zusammen,
gibt es eine einfache Möglichkeit dem default delegate eines QTreeView
einen setPlaceholderText("<text>") mitzugeben?An sich ist es ja bereits ein QLineEdit, jedenfalls sieht es so aus.
Oder muss ich da umständlich ein eigenes Delegate erstellen?
-
Hab mir schnell was gebaut. Da bei einem delegate der Cursor direkt im Feld steht
klappt das eh nicht, was ich haben wollte.class TestDelegate: public QStyledItemDelegate { Q_OBJECT public: TestDelegate(QObject *parent=0); virtual ~TestDelegate(); virtual QWidget* createEditor( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const; };
TestDelegate::TestDelegate(QObject *parent) : QStyledItemDelegate(parent) { } TestDelegate::~TestDelegate() { } QWidget* TestDelegate::createEditor( QWidget * parent, const QStyleOptionViewItem & option, const QModelIndex & index ) const { QWidget* widget = QStyledItemDelegate::createEditor(parent, option, index); QLineEdit *le = qobject_cast<QLineEdit*>(widget); if (le) le->setPlaceholderText("test"); return widget; }