Dúvida com JList

Como eu mudo a cor de fundo de uma linha da JList de acordo com seu index???

Como eu insiro checkbox dinamicamente na minha JList e quando marcar um checkbox eu seleciono o valor da linha?

Aqui mostro métodos que podem ajudar!

getSelectedIndex() -retorna o indice em que esta selecionado a lista.

setSelectionBackground(Color selectionBackground) - define cor de fundo baseado no parametro dado.

http://docs.oracle.com/javase/6/docs/api/javax/swing/JList.html