Название: Как проигнорировать смену текущего item-а в QListWidget? Отправлено: Varan от Май 13, 2011, 12:34 Вопрос касается и других наследников QAbstractItemView.
Я хочу, чтобы при выборе нового item в списке QListWidget происходила проверка на правильность некоторых данных, и, если эти данные неправильные, переход на новый item бы просто не происходил. Но как проигнорировать смену текущего item, я пока не нашёл. Название: Re: Как проигнорировать смену текущего item-а в QListWidget? Отправлено: GreatSnake от Май 13, 2011, 12:43 Перегрузи
Код
Название: Re: Как проигнорировать смену текущего item-а в QListWidget? Отправлено: Varan от Май 13, 2011, 12:59 Перегрузи я так понял, что эта функция фактически уже вызывается по факту - т.е. как запретить в ней переход, я не нашёл. Код
Только если ещё раз делать setCurrentItem(prev)? После чего опять вызовется она же. Название: Re: Как проигнорировать смену текущего item-а в QListWidget? Отправлено: GreatSnake от Май 13, 2011, 15:27 Цитировать я так понял, что эта функция фактически уже вызывается по факту - т.е. как запретить в ней переход, я не нашёл. Да, нужно вставлять "guards" от рекурсии.Только если ещё раз делать setCurrentItem(prev)? После чего опять вызовется она же. Можно и по-другому. Перегружаем Код в случае смены элемента по нажатию мыши и Код в случае смены элемента по нажатию клавиатуры. Имхо, других вариантов нет. Название: Re: Как проигнорировать смену текущего item-а в QListWidget? Отправлено: Varan от Май 13, 2011, 16:41 Имхо, других вариантов нет. Благодарю. Отстой в том, что списка на самом деле два вложенных. Условие проверяется на нижнем уровне, а переход надо блокировать на любом :). |