Flash: Cách tạo đồng hồ số đơn giản

dong_ho

Chào các thầy cô.

Bài viết này sẽ hướng dẫn cách lấy thông tin ngày tháng trong Flash và hiện ra ngày giờ trong Flash 1 cách đơn giản

Ngôn ngữ sử dụng: ActionScript 2.

 

dong_ho

Chào các thầy cô.

Bài viết này sẽ hướng dẫn cách lấy thông tin ngày tháng trong Flash và hiện ra ngày giờ trong Flash 1 cách đơn giản

Ngôn ngữ sử dụng: ActionScript 2.

Note: Để làm theo được bài hướng dẫn n
ày, thầy cô cần có chương trình Flash 8 (hoặc Flash 9, 10) đã cài đặt trong máy, và biết được ít nhất là vị trí của các bảng công cụ, bảng thuộc tính,... trong chương trình Flash. Các bài hướng dẫn cài đặt và giới thiệu về các khái niệm cơ bản sẽ được biên soạn và đưa lên trong thời gian gần đây nhất có thể. Đây là bài viết theo yêu cầu từ thầy Lê Văn Bình (người đầu tiên đưa yêu cầu lên trang web) nên tôi ưu tiên đưa lên trước.

 

I. Lý thuyết: Giới thiệu về lớp Date trong Flash

Để lấy được ngày tháng trong Flash cần phải sử dụng ActionScript (AS). Cách đơn giản nhất là lấy thông tin từ lớp Date mà Flash đã cung cấp sẵn.

1. Đầu tiên cần khai báo một đối tượng thuộc lớp Date:

var date:Date = new Date();

2. Sau khi khai báo như trên, biến date sẽ có trong mình các thông tin về thời gian của máy mà ta cần lấy.

Chú ý: Cách này sẽ lấy thời gian của máy tính hiện đang chạy file flash, nên nếu thời gian trên máy tính đó bị thiết lập sai thì thời gian lấy được cũng bị sai.

+Để biết hôm nay là ngày bao nhiêu:

var ngay = date.getDate();

+Để biết tháng này là tháng nào:

var thang = date.getMonth() + 1;

(vì hàm date.getMonth() trả về số thứ tự của tháng trong năm, bắt đầu từ 0 tới 11 nên ta cần cộng thêm 1 để lấy được tháng thật)

+Để biết năm nay là năm nao:

var nam = date.getFullYear() ;

+Để biết hôm nay là thứ mấy:

var thu = date.getDay();

(hàm date.getDay() trả về số thứ tự của ngày trong tuần, tương ứng sẽ là:

0: Chủ nhật, 1: Thứ hai, 2: Thứ ba, .... , 6: Thứ bảy)

Vì ta cần hiển thị ra thứ dưới dạng chữ (Thứ hai, Thứ ba,...) chứ không phải là các con số nên có thể dùng 1 cách khá nhanh gọn đó là khai báo 1 mảng (Array) chứa tên của các thứ trong tuần:

var ten_thu = ["Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy"];

Sau đó dựa vào số thứ tự do hàm date.getDay() trả về,  ta dễ dàng lấy được tên của thứ trong tuần:

var thu = ten_thu[date.getDay()];

vd:

với date.getDay() = 0, ta có: thu = ten_thu[0] = "Chủ nhật"

với date.getDay() = 4, ta có: thu = ten_thu[4] = "Thứ năm"

.....

+Để biết giờ hiện tại:

var gio = date.getHours();

+Để biết phút hiện tại:

var phut = date.getMinutes();

+Để biết giây hiện tại:

var giay = date.getSeconds();

 

II. Thực hành

B1.

Mở chương trình Flash 8, tạo 1 file mới (chú ý nếu chương trình sử dụng là Flash CS3 hoặc Flash CS4 (Flash 9 hoặc  Flash 10) thì cần phải chọn kiểu file là Flash ActionScript 2)

 

newdoc2_500

B2.

Bấm vào công cụ có tên Text Tool trên thanh công cụ và bấm vào stage để tạo ra 1 ô text (có thể gõ mẫu vài chữ số vào ô text đó để dễ sắp xếp sau này), chọn kiểu cho ô text đó là Dynamic Text, sau đó đặt Instance name cho ô text đó là gio_txt. Đây là ô sẽ hiện giá trị của giờ hiện tại

textfield_500

B3.

Làm tương tự bước 2 để tạo thêm 2 Dynamic Text nữa với Instance name lần lượt là phut_txtgiay_txt. Hai ô này là để hiện phút và giây hiện tại.

giophutgiay

B4.

Tạo thêm 2 ô text, mỗi ô viết một dấu hai chấm ":", và chèn các dấu hai chấm vào giữa các ô text như hình vẽ

giophutgiay2

B5.

Tiếp tục làm giống bước 2 để tạo 1 Dynamic Text với Instance name được đặt là ngay_txt. Ô này sẽ hiện thông tin về ngày tháng hiện tại.

ngay

B6.

Bấm vào frame 1 trên timeline và bấm F9 để hiện ra cửa sổ soạn thảo ActionScript.

Nhập vào đoạn code sau đây (hầu hết các phần của đoạn code này đã được giải thích ở phần Lý thuyết rồi, nếu có gì thắc mắc thầy cô có thể hỏi lại):

 

var ten_thu:Array = ["Chủ nhật", "Thứ hai", "Thứ ba", "Thứ tư", "Thứ năm", "Thứ sáu", "Thứ bảy"];

this.onEnterFrame = function():Void {
var date:Date = new Date();
var thu = ten_thu[date.getDay()];
var ngay = date.getDate();
var thang = date.getMonth() + 1;
var nam = date.getFullYear();
ngay_txt.text = thu + ", " + ngay + "/" + thang + "/" + nam;

var gio = date.getHours();
var phut = date.getMinutes();
var giay = date.getSeconds();
if (gio < 10) gio = "0" + gio; // nếu giờ hiện tại <10 thì thêm số 0 vào đầu
if (phut < 10) phut = "0" + phut; // nếu phút hiện tại <10 thì thêm số 0 vào đầu
if (giay < 10) giay = "0" + giay; // nếu giây hiện tại <10 thì thêm số 0 vào đầu
gio_txt.text = gio;
phut_txt.text = phut;
giay_txt.text = giay;
}

as

B7.

Nhấn Ctrl + S để lưu lại file vừa tạo và Nhấn Ctrl + Enter để test thử chương trình.

Với đoạn code và cách làm như trên, chương trình sẽ hiện ra kết quả như thế này:




B8.

Bước này tùy vào ý thích mà các thầy cô có thể trang trí thêm và sửa đổi đoạn mã để tạo ra các file Flash đẹp như ý. Một vài kết quả ví dụ:


Pin It

________________________Source:tieuhocvn.info___________________

Top