Предполагая, что QT::DisplayRole
и QT::EditRole
имеют разные значения (иначе зачем вам сравнивать оба?), Тогда давайте подумаем об этом ...
Если role
равноодному, то оно должно не быть равным другому.Следовательно, одно из двух условий будет выполнено.А поскольку это ИЛИ, это означает, что все выражение будет истинным.
Единственный случай, когда этого не произойдет, - QT::DisplayRole == QT::EditRole
.Вы имели в виду использовать AND (&&
) вместо OR?