Russian Qt Forum
Ноябрь 24, 2024, 18:01 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: match для поиска в QTreeView?  (Прочитано 3095 раз)
EhTemka
Гость
« : Август 21, 2007, 20:57 »


Привет всем!

qt 4.1.4
   
   Что-то ни как не могу разобраться. Мне нужен поиск в дереве(причем по всем чилдренам и парентам)

я пишу такой код
Код:
QModelIndexList list = match(index(0,0), Qt::UserRole, myVariant, 1, Qt::MatchFlags(Qt::MatchRecursive));
                if (!list.isEmpty()) {
                    .......
                }   

и ентот матч возващает мне только совпадение из верхнего уровня, хотя я и указал ему MatchRecursive. Как будто он далше и не ищет. А совпадения и в детях есть - это точно. Так что же, получается не работает рекурсивный поиск? Мож я что не так пишу?

Объясните, если кто знает, пож
Записан
bigirbis
Гость
« Ответ #1 : Август 22, 2007, 08:38 »

Цитировать
The search starts from the start index, and continues until the number of matching data items equals hits, the search reaches the last row, or the search reaches start again, depending on whether MatchWrap is specified in flags.
Приблизительный перевод
Цитировать
Поиск начинается от начального индекса и продолжается, пока количество совпадений не достигнет hits...
А у тебя этот hits равен 1.
Записан
EhTemka
Гость
« Ответ #2 : Август 23, 2007, 16:37 »

 Так в том то и дело, что он не находит не одного...

Я этот мач запускаю для разных значений. И должно совпасть только одно, которое находится либо в паренте, либо в чилдрене. И значение, которое находятся в паренте, совпадающее с заданным  - находится, а то которое в детёныше - нет.
« Последнее редактирование: Август 23, 2007, 16:44 от EhTemka » Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.07 секунд. Запросов: 21.