Muchas Gracias a todos por contestar y poner tanto interés.
Yo esto lo hago cuando elijo en un ListBox un dato, en función del indice del ListBox escojo en varios Choose los datos que me hacen falta (lo hago así en visual). En Delphi igual pero con IF´s. Estoy seguro que se podrá hacer de una forma mas sencilla, pero esta es la que yo hago.
Con las respuestas que dais las probaré, espero que me salgan bien

.
Un saludo y gracias nuevamente.