ActionScript 3.0 Cookbook: Solutions for Flash Platform and Flex Application Developers
10.4.1 Problem
You want to display milliseconds in minutes and seconds (mm:ss) format. 10.4.2 Solution
Create and use a custom, static method, Date.formatMilliseconds( ). 10.4.3 Discussion
Many values in ActionScript are given in milliseconds. For example, sound lengths are given in milliseconds. However, in most cases, you want to format the value as minutes and seconds when displaying it to the user. You can accomplish this with a short custom method that we'll add to the Date class. Here's our static method a static method is called directly from the class, rather than on an object instance that converts milliseconds to the format mm:ss. Add this code to your Date.as file for easy inclusion in other projects. Date.formatMilliseconds = function (millis) { // Determine the minutes and seconds portions of the time. var seconds = millis / 1000; var m = Math.floor(seconds/60); var s = Math.round(seconds - (m * 60)); // Add leading zeros to one-digit numbers. if (m < 10) { m = "0" + m; } if (s < 10) { s = "0" + s; } return m + ":" + s; }; Here's an example of how you can use this method: #include "Date.as" // Assuming mySound_sound is a Sound object, get its duration in milliseconds. dur = mySound_sound.duration; // Create a text field to display the value. this.createTextField("displayTime_txt", 1, 0, 0, 100, 20); // Display the time value formatted as mm:ss. displayTime_txt.text = Date.formatMilliseconds(dur); 10.4.4 See Also
Recipe 10.3 and Recipe 10.5 |