2014-11-12 7 views
0

어떻게 폴더를 필터링 할 수 있습니까? QDir :: Filters here을 찾았습니다. 그러나 표현식으로 필터링하는 방법을 볼 수 없습니다. 나는 nameFilters를 사용하려고Qt : QFileSystemModel 표현식을 사용하여 디렉토리가 아닌 파일 필터링

enter image description here

"A00 *"로 시작하는 폴더를 숨기려면, 그러나 폴더는 회색이되고있다 :

QStringList filters; 
filters <<"Cloth"; 
dirModel->setNameFilters(filters); 

enter image description here

+1

당신이 (false)를'dirModel-> setNameFilterDisables을 설정하려고하면,'? – vahancho

+0

답변으로 작성해주세요. 그리고 어떻게 표현을 역으로 할 수 있습니까? – user1767754

+0

ProxyModel의 하위 클래스를 만들고 원하는 디렉토리를 표시하지 않기 위해 자신 만의 필터를 만들면 어떨까요? –

답변

2

가있다 항목 (파일, 디렉토리)을 시각화하는 방법을 정의하는 QFileSystemModel의 속성은 이름 필터를 전달하지 않는다는 것을 나타냅니다. nameFilterDisables입니다. 기본적으로이 속성은 true이며, 이름 필터를 통과하지 못하는 항목은 사용할 수 없습니다. 귀하의 경우를 들어이 속성이 숨겨 비 필터링 항목을 만들어 비활성화 할 수 있습니다

dirModel->setNameFilterDisables(false); 
+0

) 가능한 중복 필터를 작성하는 방법을 쓸 수 있습니까? – user1767754

+0

@ user1767754, 무엇을 의미합니까? – vahancho

+0

filters ""^ Cloth "; 표현식을 반전시키기 위해 어떻게 와일드 카드를 사용할 수 있습니까? – user1767754