1
나는 사용자 정의 QTableView
과 QAbstractTableModel
을가집니다. 내 QTableView
은 필요하지 않으므로 QAbstractTableModel
에서 일부 열을 숨 깁니다.QTableView에서 다음 보이는 열로 이동
을 클릭하면 다음 사용 가능한 (편집 가능한) 열을 선택하고 싶습니다. 현재 구현은 QAbstractTableModel
에서 다음 색인을 가져 오는 것이지만이 색인에는 숨겨진 열이 포함됩니다. (탭을 타격 할 때 선택한 "다음"열을보기 전에 그래서 몇 프레스 수 있습니다.)
가 어떻게 이 탭 다음 볼 열로 이동합니다 알 수 있습니까?
언어는 C++입니다. 다음은 내 QTableView
내 코드입니다 : 그것은 우아한 아니다
void keyPressEvent(QKeyEvent* event)
{
if((event->modifiers() == Qt::KeyboardModifier::NoModifier) && (event->key() == Qt::Key::Key_Tab))
{
this->moveToNextCell();
}
else
{
this->QTableView::keyPressEvent(event);
}
}
void moveToNextCell()
{
const QModelIndex index = this->currentIndex();
int nextColumn = index.column() + 1;
if(index.column() <= lastEditableCol)
{
this->setCurrentIndex(model->index(index.row(), nextColumn));
}
}
void QHeaderView :: setSectionsMovable (bool movable) –