No, li devi usare dentro un altro metodo, associato all'evento onEnterFrame di un oggetto o in una funzione richiamata tramite setInterval. L'onLoad viene richiamato a caricamento completo, e quindi troppo tardi per un preloader. Esempio banale:
codice:
suono = new Sound();
suono.loadSound("brano.mp3", false);
suono.onLoad = function(success)
{
if(success){
this.start();
} else {
trace("ERRORE");
}
};
this.onEnterFrame = function()
{
var car = suono.getBytesLoaded();
var tot = suono.getBytesTotal();
trace("Percentuale: " + Math.round((car / tot) * 100)) + "%");
};