Russian Qt Forum

Qt => Пользовательский интерфейс (GUI) => Тема начата: Leviafan от Март 28, 2015, 22:49



Название: QTableWidget редактирование определенной ячейки
Отправлено: Leviafan от Март 28, 2015, 22:49
Код
C++ (Qt)
ui->tableWidget_ftp_dir->setEditTriggers(QAbstractItemView::NoEditTriggers);
запрещает редактирование ячеек, мне надо что бы было запрещено редактирование всех ячеей кроме последней, номер последней ячейки я знаю.
никак не могу придумать как это реализовать.


Название: Re: QTableWidget редактирование определенной ячейки
Отправлено: gil9red от Март 29, 2015, 02:08
Код
C++ (Qt)
ui->tableWidget_ftp_dir->setEditTriggers(QAbstractItemView::NoEditTriggers);
запрещает редактирование ячеек, мне надо что бы было запрещено редактирование всех ячеей кроме последней, номер последней ячейки я знаю.
никак не могу придумать как это реализовать.

Номер последней ячейки вы можете узнать с помощью QTableWidget::columnCount  (http://doc.qt.io/qt-4.8/qtablewidget.html#columnCount-prop)и QTableWidget::rowCount  (http://doc.qt.io/qt-4.8/qtablewidget.html#rowCount-prop), а запретить редактирование отдельной ячейки можно через QTableWidgetItem::setFlags (http://doc.qt.io/qt-4.8/qtablewidgetitem.html#setFlags)

Флаги (http://www.doc.crossplatform.ru/qt/4.6.x/qt.html#ItemFlag-enum)