If you want to change the background then how to do it depends on how your model is constructed. You can either teach your model to understand Qt::BackgroundRole so that the default delegate can ask for the background color and render it or you can implement a custom delegate that will know how to calculate the background color based on your model contents (or anything else that you want). In the latter case you will have to draw the background yourself.