Thống kê

  • truy cập   (chi tiết)
    trong hôm nay
  • lượt xem
    trong hôm nay
  • thành viên
  • Vui mừng chào đón

    0 khách và 0 thành viên
    Gốc > THỦ THUẬT WEB-BLOG > Thủ thuật xử lý flash >

    Tạo đồng hồ kim trong Flash

    Bài này sẽ hướng dẫn bạn cách tạo một chiếc đồng hồ hoạt động thực bằng cách sử dụng các hiệu ứng của Flash.

    1. Tạo một hình đòng hồ theo ý thích của bạn. Có thể vẽ nó trên Photoshop sau đó import nó vào flash hoặc vẽ trực tiếp trên flash. Bạn có thể lấy hình đồng hồ sau:

    2. Tạo 5 layer trên phần Timeline, tên của chúng lần lượt tương ứng là: sec (giây), min (phút), hour (giờ) và actions. Bạn có thể xem hình dưới đây là Timeline mẫu.

    3. Chèn vào thiết kế đồng hồ nền mà bạn đã tạo sẵn

    4. Vẽ một đường kẻ dọc trong layer sec. Chọn dòng kẻ đó và nhấn F8 để chuyển nó sang dạng Symbol. Đặt tên cho Symbol này là sec_mc, chọn Movie clip và chọn ô vuông giữa dưới cùng trong phần Registration.

    5. Nhấn OK 

    6. Trong layer sec, đặt sec_mc vào vị trí tương ứng so với ảnh nền đồng hồ bạn đã thiết kế. Đặt tên của layer sec trong phần Instance của cửa sổ thuộc tính Properties là “sec”. 

    7. Kéo sec_mc từ cửa sổ Library vào layer min. Nếu cửa sổ Library không mở, nhấn Ctrl + L. Giảm bớt chiều dài của sec_mc trong phần này đi (để tương ứng với kim phút). Đặt nó vào vị trí tương ứng với ảnh nền đồng hồ. Đặt tên layer này là “min” trong phần Instance của cửa sổ thuộc tính. 

    8. Tiếp tục kéo sec_mc vào layer hour từ cửa sổ Library đã mở. Lại giảm chiều dài của kim đi cho tương ứng với kim giờ. Đặt nó vào vị trí tương ứng so với ảnh nền đồng hồ. Đặt tên nó là “hour” trong ô Instance. 

    9. Chọn layer actions, vào phần Action Script (F9) và đưa vào đoạn mã sau:

    time=new Date(); // time object
    seconds = time.getSeconds()
    minutes = time.getMinutes()
    hours = time.getHours()

    hours = hours + (minutes/60);

    seconds = seconds*6; // calculating seconds
    minutes = minutes*6; // calculating minutes
    hours = hours*30; // calculating hours

    sec._rotation=seconds; // giving rotation property
    min._rotation=minutes; // giving rotation property
    hour._rotation=hours; // giving rotation property
     

    10. Vào frame thứ 2 của từng layer và nhấn phím F5

    Kết quả đồng hồ của bạn có chạy không, hãy thử nhấn Ctrl + Enter xem sao. Ngoài ra bạn có thể tự chế các kim sao cho phù hợp không nhất thiết là phải lấy kim từ sec_mc. 

    Download file nguồn tại đây.

    Theo quantrimang


    Nhắn tin cho tác giả
    Đỗ Văn Cường @ 08:57 22/05/2011
    Số lượt xem: 1212
    Số lượt thích: 0 người
     
    Gửi ý kiến