2
사용자가 몇 가지 기준을 고려하여 10 점을 입력 할 수있는 표를 만들기 위해 노력하고 있습니다. 내 SQLite 데이터베이스에 연결되어 있고 조건에 대한 설명을 보려면 왼쪽에있는 열을 검색하고, 오른쪽에있는 학년 (편집 가능한 열)을 입력 할 수있는 곳의 열을 검색합니다. 여기 내 코드 :표의 열을 편집 가능하게 만드는 방법은 무엇입니까?
QSqlQueryModel *model = new QSqlQueryModel();
QSqlQuery* qry = new QSqlQuery(conn.mydb);
qry->prepare("select I.itemDescription, S.grade from Items I, ItemsToStudent S where I.itemID = S.itemID and I.rubricID = ? and S.courseID = ? and S.studentID = ?");
qry->addBindValue(actid);
qry->addBindValue(courseid);
qry->addBindValue(studentid);
qry->exec();
model->setQuery(*qry);
ui->rubricTable->setModel(model);
그러나 두 번째 열을 편집 할 수 없습니다. 이 일을 어떻게 성취 할 수 있습니까?
나는처럼 편집 할 수 원하지 않는 일부 필드가 있습니다 기준 열. 특정 열을 편집 할 수 없도록 만드는 방법은 무엇입니까? 또한 학년 열에 성적을 입력하려고하면 공백이 반환되고 입력 한 값은 데이터베이스에서 업데이트되지 않습니다. 업데이트를 위해 신호를 사용해야합니까, 아니면 자동으로 그렇게 할 것으로 예상되는 관계형 테이블 모델입니까? – sengakae
좋아, 나는 인터넷 검색을 통해 나의 첫 번째 질문을 발견했다. 숫자 2를 찾으려고 할 것입니다. – sengakae
사용자 정의 모델을 가지고 Qt :: ItemFlags QAbstractItemModel :: flags (const QModelIndex & index) const 메소드를 구현하고 Qt :: ItemIsEditable 플래그가 설정되지 않은 플래그 세트를 반환 할 수 있습니다 당신이 편집하고 싶지 않은 세포들. – Nejat