От известно време се занимавам доста с Flash. Последното ми предизвикателство беше да направя skin за FLVPlayback компонент, който освен стандартните бутони за пускане, паузиране, цял екран и лента за прогреса, трябваше да има и часовник, който да показва колко време остава до краят на клипа, или колко време е изминало до сега от пускането му. Прилагам кодът, който не съм измислил аз, но ми отне доста време докато го намеря и накарам да работи под Action Script 3
var minutes:Number = 0;
var seconds:Number = 0;
var totalMinutes:Number = 0;
var totalSeconds:Number = 0;
var l:Object = new Object();
l.enterFrame = function() {
totalMinutes = Math.floor(video_mc.totalTime / 60);
totalSeconds = Math.floor(video_mc.totalTime) % 60;
minutes = Math.floor(video_mc.playheadTime / 60);
seconds = Math.floor(video_mc.playheadTime) % 60;
my_ta.text = ((minutes < 10) ? “0” + minutes : minutes) + “:” + ((seconds < 10) ? “0” + seconds : seconds) + ” / ” + ((totalMinutes < 10) ? “0” + totalMinutes : totalMinutes) + “:” + ((totalSeconds < 10) ? “0” + totalSeconds : totalSeconds);
}
addEventListener( Event.ENTER_FRAME, l.enterFrame );
Този код го слагате в Actions layer-а на вашият скин. Създавате си динамичен текст с име “my_ta” и времето ще почне да се показва 🙂
От показаното тук мисля, че лесно може да се ориентирате какво точно става. Повечето уроци из нета са свързани с показването на времето при “stateChange”, който се активира само при кликане на play/pause бутона.