Read the docs . The Qt::ItemDataRole enum has a value named Qt::CheckStateRole. If the value returned is not false (when converted to bool from QVariant) then a checkbox is displayed...