Я могу придумать несколько способов сделать это.Проще всего, если у вас есть доступ к модели, это добавить отслеживание состояния индексов в модели и вернуть правильные параметры для ролей, запрошенных в функции data ().Недостаток этого заключается в том, что если вы используете одну и ту же модель в разных представлениях и хотите сохранить выделенные участки локально для одного представления.
Второй, наиболее простой, вероятно, заключается в создании прокси-модели, которая отслеживаетсами данные, и получает все другие данные из исходной модели.В этой ситуации (когда вы не изменяете строки или столбцы исходной модели), это, вероятно, будет довольно просто.
Сложнее всего создать пользовательский делегат, который отслеживает, какие строки / столбцы должныбыть выделенным, и рисует себя по-разному в зависимости от строки / столбца модельного индекса, который он рисует.Вам нужно будет сохранить доступ к делегату, чтобы вы могли сказать ему, какие строки и столбцы должны быть установлены.Вам также необходимо разобраться с тем, что происходит при изменении модели.