Название: QItemDelegate и установка свойств QLineEdit Отправлено: алексей от Декабрь 18, 2008, 17:17 Здравствуйте !! Есть такая проблема !!!! При редактировании ячейки в QtableView курсор становиться на последний символ и выделяет ее - строка растягивается на весь грид, так как длина поля 600 символов, также хотелось бы чтоб курсор устанавливался на начала записи и без выделения. Создал делегата:
Код: class SimpleDelegate : public QItemDelegate { При добавлении кода - LineEdit->setCursorPosition(0) в setEditorData ничего не происходит. Можно ли создать конструкцию сигнал-слот для LineEdit и как ??? Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: pastor от Декабрь 18, 2008, 17:23 А может стоит попробывать переопередлить editorEvent, споймать ShowEvent, а затем дернуть setCursorPosition(0)
Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: алексей от Декабрь 18, 2008, 17:30 А может стоит попробывать переопередлить editorEvent, споймать ShowEvent, а затем дернуть setCursorPosition(0) А как в делегате для QLineEdit это сделать, или я что не понимаю.... Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: pastor от Декабрь 18, 2008, 18:07 Также само как вы перегрузили createEditor, setEditorData, updateEditorGeometry и др.
См. QAbstractItemDelegate::editorEvent Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: алексей от Декабрь 19, 2008, 09:48 Также само как вы перегрузили createEditor, setEditorData, updateEditorGeometry и др. Спасибо... буду пробовать !!!!См. QAbstractItemDelegate::editorEvent Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: pastor от Декабрь 19, 2008, 16:30 Я немного ошибся, нужно юзать не editorEvent, а eventFilter, вот код, должно работать:
Код
Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: алексей от Декабрь 22, 2008, 09:13 Да, вышепреведенный код работает... огромное спасибо !!!
Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: TaIRou от Сентябрь 21, 2011, 19:30 Ребят, дабы новую тему не создавать, спрошу здесь.
QTableView под наши нужды создает дефолтные делегаты в зависимости от типа данных. Так вот, реально ли без создания собственного подкласса делегата достучаться до дефолтного делегата? Суть: необходимо всего лишь сделать lineEdit->setValidator(). Не то чтобы лень... Но целый класс, ради установки валидатора. Название: Re: QItemDelegate и установка свойств QLineEdit Отправлено: kambala от Сентябрь 21, 2011, 19:54 "целый класс" в данном случае - это около десятка строчек кода, зато это корректно и читабельность будет лучше
|