Preloader question AGAIN..WHY!

Is this right for a preloader?

onClipEvent (enterFrame) {
loaded = _parent.getBytesLoaded();
total = _parent.getBytesTotal();
progress = Math.round((loaded/total)*100);
loaderInfo = Math.round(loaded/1000) + " k / " + Math.round(total/1000) + " k ";
if (loaded == total) {

When i use this on a button to load a differnet scene the stupid thing take awhile to load the preloader…I know i asked this question before, but i still havnt got the answer. When i goto someone else post it gets me all confuse. I hate preloading!! Someone please help me out…