Tải bản đầy đủ (.pdf) (8 trang)

Adobe Flash - Hướng Dẫn Tạo Đồng Hồ Số ppsx

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (258.69 KB, 8 trang )

Adobe Flash - Hướng Dẫn Tạo Đồng Hồ Số

Trong bài viết này, mình sẽ giới thiệu cách tạo một đồng hồ số bằng
Flash thông qua các ActionScript, và làm thế nào để hiển thị các ngày
trong tuần và các ngày của tháng. Bạn có thể đặt đồng hồ này vào bất kỳ
một website nào
Tạo Đồng Hồ Flash:
Bước 1: Đầu tiên, mở một tài liệu flash mới.



Bước 2: Nhấn vào Text tool (T), tạo 3 đối tượng Text có nội dung là
"Time", "Today" và "Date".
Chú ý, đây là các Static Text nhé.





Bước 3: Bây giờ, chúng ta chúng ta tạo tương ứng 3 Dynamic Text với
các Static Text chúng ta vừa tạo ở bước 2, và đặt nó bên cạnh những
Static Text đó.

Bước 4: Sau khi tạo xong các Dynamic Text, chúng ta đặt tên cho chúng
theo cách mà bạn đã làm ở trên. Bạn chọn Hộp Dynamic đầu tiên bên
cạnh chứ "Time", sau đó chuyển đến cửa sổ Properties (Ctrl + F3) và đặt
tên là "nTime".


Bước 5: Ta làm tương tự với các hộp Dynamic còn lại. Hộp Dynamic bên
cạnh "Today" đặt tên là "displayDay" và bên cạnh "Date" có tên là


"displayDate". Hãy nhớ là đặt tên cho các Dynamic Text chứ không phải
là Static Text.

Bước 6: Tiếp theo, nhấn vào hộp Static đầu tiên và chuyến đổi nó thành
biểu tượng bằng cách Chọn nó và nhấn F8, đảm bảo ô "Movie clip" được
check và đặt tên tùy theo ý bạn muốn.

Bước 7: Bây giờ các bạn hãy chọn 2 hộp Dynamic còn lại và chuyển nó
thành 1 biểu tượng. Hãy chắc chắn rằng tạo cả 2 hộp đó thành 1 biểu
tượng và đặt tên tùy ý bạn chọn.

Bước 8: Bây giờ các bạn hãy chọn biểu tượng trên cùng và nhấn F9 để
mở cửa sổ ActionScript. Và dán đoạn mã sau vào:
onClipEvent (enterFrame) {
myTime = new Date();
nSeconds = myTime.getSeconds();
nMinutes = myTime.getMinutes();
nHours = myTime.getHours();
if (nHours>=12) {
ampm = "pm";
} else {
ampm = "am";
}
if (nHours>=13) {
nHours = nHours-12;
}
if (length(nMinutes) == 1) {
nMinutes = "0"+nMinutes;
}
if (length(nSeconds) == 1) {

nSeconds = "0"+nSeconds;
}
nTime = nHours+":"+nMinutes+":"+nSeconds+" "+ampm;
}
Bước 9: Tiếp theo, chúng ta chọn các biểu tượng khác là "today" và
"date" và mở lại của sổ ActionScript (F9), dán đoạn mã sau vào:
onClipEvent (load) {
mon = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sept",
"Oct", "Nov", "Dec"];
weekdays = ["Sunday", "Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday"];
}
onClipEvent (enterFrame) {
now = new Date();
nDay = weekdays[now.getDay()];
nMonth = mon[now.getMonth()];
nDate = now.getDate();
nYear = now.getFullYear();
displayDate = nMonth+" "+nDate+", "+nYear;
displayDay = nDay;
}
OK. Nếu Bạn nhấn tổ hợp phím (Ctrl + Enter), bạn sẽ nhìn thấy đoạn
Movie clip của bạn hoạt động, nó sẽ hiển thị thời gian, ngày hôm nay
cũng như ngày của tháng (Nếu ko có gì sai xót xảy ra ). Sau đây, mình
sẽ giải thích về một số đoạn code.
Giải Thích Code
A/ TIME CODE:
onClipEvent (enterFrame) {
Phần này của đoạn code lặp lại các hành động chứa bên trong nó mỗi khi
Movie Clip được truy cập.

myTime = new Date();
Đoạn mã trên tạo một đối tượng Date mà sẽ được sử dụng để nhận thông
tin từ hệ thống.
nSeconds = myTime.getSeconds();
nMinutes = myTime.getMinutes();
nHours = myTime.getHours();
Đoạn này định nghĩa các biến giây, phút, giờ và nhận thông tin từ hệ
thống và cùng hoạt động trong file Flash.
if (hours>=12) {
ampm = "pm";
} else {
ampm = "am";
}
Câu lệnh IF kiểm tra xem giờ có lớn hơn hay bằng 12 hay không và
chuyển về dạng am hoặc pm.
if (hours>=13) {
nHours = nHours-12;
}
Bởi vì Flash hiển thị thời gian trong hệ thống giờ 24 thay vì hệ thống giờ
12, câu lệnh IF bên trên được sử dụng chuyển về hệ thống giờ 12 nếu giờ
lớn hơn hoặc bằng với 13 ( 13 - 12 = 1)
if (length(nMinutes) == 1) {
nHinutes = "0"+nMinutes;
}
if (length(nSeconds) == 1) {
nSeconds = "0"+nSeconds;
}
Cả 2 câu lệnh IF trên đều dùng để chèn thêm số "0" ở đằng trước giây và
phút nếu độ dài của chúng bằng 1, có nghĩa là các biến phải nhỏ hơn 10
nTime = nHours+":"+nMinutes+":"+nSeconds+" "+ampm;

}
Dòng lệnh trên hiển thị thời gian sử dụng Hộp Dynamic được đặt tên là
"nTime" mà đã tạo ở bên trên.
B/ DATE CODE:
onClipEvent (load){
Dòng Lệnh thực hiện các hành động chứa trong ngoặc đơn chỉ khi Movie
Clip được load. Điều này cũng thường xuyên được sử dụng để định nghĩa
các biến.
mon = ["Jan","Feb","Mar","Apr","May","Jun","Jul",
"Aug","Oct","Nov","Dec"];

weekdays = ["Sunday","Monday","Tuesday",
"Wednesday","Thursday","Friday","Saturday"];
bên Trên là 2 mảng mà được sử dụng để lưu trữ các ngày trong tuần và
các tháng trong năm. Vị trí đầu tiên của mảng bắt đầu từ số 0, tương
đương với giá trị Jan - Tháng 1 trong mảng "mon" và Sunday - Chủ Nhật
trong mảng "weekdays". Thứ tự này bạn có thể thay đổi tùy ý bạn sắp
xếp.
now = new Date()
}
Dòng lệnh này để thực hiện việc tạo ra một đối tượng Date mà sẽ được sử
dụng để nhận thông tin về thời gian.
onClipEvent (enterFrame){
Dòng lệnh này lặp lại các hoạt cảnh và thực hiện các hành động mỗi khi
Movie được truy cập.
nDay = weekdays[now.getDay()]
nMonth = mon[now.getMonth()]
nDate = now.getDate()
nYear = now.getFullYear()
Các dòng lệnh trên đều được sử dụng để lưu trữ thông tin. Các mảng

được chứa bên trong ngoặc vuông "[]".
displayDate = nMonth+" "+nDate+", "+nYear
displayDay = nDay
}
Đoạn mã cuối cùng được sử dụng để hiển thị thông tin bên trong các
trường Dynamic mà đã được tạo từ ban đầu. Có rất nhiều cách để sử dụng
các hiệu ứng này cũng như các cách viết code để hiển thị các hiệu ứng đó.
Đây chỉ là một cách mà tôi cảm thấy phù hợp nhất và dễ nhất.
Chúc các bạn thành công.

×