QlistView에서 텍스트를 얻습니다
문제
제 3 자에게 포인터가 있습니다 QListView
단순히 텍스트 행을 표시하는 개체. 그 텍스트 문자열을 잡는 가장 좋은 방법은 무엇입니까?
해결책
접근 할 수있는 모델 QListView::model()
, 항목을 보유합니다. 당신은 다음과 같은 일을 할 수 있습니다 :
QListView* view ; // The view of interest
QAbstractItemModel* model = view->model() ;
QStringList strings ;
for ( int i = 0 ; i < model->rowCount() ; ++i )
{
// Get item at row i, col 0.
strings << model->index( i, 0 ).data( Qt::DisplayRole ).toString() ;
}
또한 텍스트가 작성 될 때 업데이트 된 문자열을 얻고 싶다고 언급합니다. 모델을 연결하여이를 수행 할 수 있습니다. dataChanged()
문자열을 추출하는 기능에 신호를 보냅니다. 보다 QAbstractItemModel::dataChanged()
.
다른 팁
QlistView 객체에 루트 QModelIndex를 요청하고 형제/어린이 방법을 사용하여 다른 항목을 반복하는 데 사용합니다. qt :: displayRole로 지정된 역할을 사용하여 인덱스의 데이터 메소드를 호출하여 각 색인과 관련된 텍스트에 액세스 할 수 있습니다.
자세한 내용은 다음 문서를 참조하십시오.
qabstractItemView - 부모 클래스에서 qlistView
제휴하지 않습니다 StackOverflow