13
Dynamic data access Trần Ngọc Anh

Lession 13: Dynamic data access

Embed Size (px)

Citation preview

Page 1: Lession 13: Dynamic data access

Dynamic data access

Trần Ngọc Anh

Page 2: Lession 13: Dynamic data access

Nội dung

1. URLRequest, URLLoader

2. Loader

3. FileReference class

4.Khi nào thì sử dụng cái gì???

5.Thực hành và bài tập

6.Câu hỏi liên quan ?

Page 3: Lession 13: Dynamic data access

1. URLLoader

- Do fileReference có thể ảnh hưởng tới file ở máy client, nên không thể chỉ định địa chỉ file từ trong code mà phải thông qua người dùng lựa chọn.

- URLLoader thì khác, nó sử dụng đối tượng URLRequest để tham chiếu tới một đường dẫn cụ thể mà không cần người dùng chỉ định qua cửa sổ browse.

- Đặc điểm: - URLLoader chỉ có thể load mà không thể ghi- URLloader sẽ gặp phải vấn đề securities khi làm việc từ

local- URLLoader chủ yếu được dùng để load dữ liệu dạng

text.

Page 4: Lession 13: Dynamic data access

1. URLLoader

• Ví dụ: load dữ liệu text từ một đường dẫn bất kỳ (trình duyệt cơ bản)

• B1: tạo một đối tượng URLLoader và một đối tượng URLRequest

• B2: tạo một textInput và một nút để khởi động việc load.• B3: xử lý sự kiện click trên nút, gọi hàm load với tham số

đầu vào là đối tượng urlRequest khởi tạo từ đường dẫn được nhập.

Page 5: Lession 13: Dynamic data access

2. Loader

- Nằm trong package flash.display, bản thân loader có thể hiển thị trực tiếp thông qua việc addChild.

- Tương tự như URLLoader trong cách thể hiện, tuy vậy, loader được tối ưu hóa trong việc load các dữ liệu multimedia.

Page 6: Lession 13: Dynamic data access

2. Loader

- Ví dụ: sử dụng Loader để load ảnh- B1: khởi tạo các đối tượng urlInput (textinput), button

load, canvas (displayobject), … lắng nghe sự kiện click trên button, addChild đối tượng loader lên canvas

- B2: xử lý sự kiện click trên button: khởi tạo đối tượng urlRequest từ đường dẫn được nhập vào trong urlInput, gọi hàm load của đối tượng loader.

- B4: ok

Page 7: Lession 13: Dynamic data access

2. Loader

- nhận thấy, không thể thay đổi cỡ của ảnh (hay một đối tượng multimedia khác). Để thay đổi, ta phải sử dụng một đối tượng hiển thị thứ 3.

- Ví dụ: sử dụng đối tượng bitmap để render ảnh load được, cần chú ý, ở đây chúng ta phải lắng nghe sự kiện complete từ thuộc tính contentLoaderInfo của đối tượng loader rồi lấy content của nó (contentLoaderInfo.content), nếu là ảnh chúng ta có thể ép nó về kiểu bitmap để hiển thị.

Page 8: Lession 13: Dynamic data access

3. File refrerence

- nằm trong package flash.net, làm nhiệm vụ chính là đại diện cho một đối tượng file nằm trên ổ đĩa (local hoặc remote)

- Từ bản flash 10 trở lên, không thể trực tiếp định nghĩa một file từ trong source code, bạn bắt buộc phải mở cửa sổ browser để tìm tới file hoặc để định nghĩa vị trí save file. Đây là tính năng bảo mật của flash để tránh truy cập trái phép vào các file trong máy khách.

- Vd: load một file text:

Page 9: Lession 13: Dynamic data access

3. File refrerence

- Vd: load một file text: - B1: khởi tạo một button và lắng nghe sự kiện click (mục đích để mở

cửa sổ browser của hệ thống- B2: khởi tạo đối tượng file reference, lắng nghe sự kiện select, sự

kiện này phát ra khi người dùng sử dụng cửa sổ browser để tìm kiếm và lựa chọn một file

var fileFilter2: FileFilter = new FileFilter("Sound", "*.mp3;*.mp4;*.wma;*.game");

fileRef.browse([fileFilter,fileFilter2]);- B3: trong hàm xử lý sự kiện select, gọi hàm load của đối tượng file

reference, rồi bắt 2 sự kiện complete và IOErrorEvent.- nếu load thành công ta bắt sự kiện complete và hiển thị nội dung

file lên textArea- nếu có lỗi, hiển thị thông báo lỗi lên textArea.

Page 10: Lession 13: Dynamic data access

4. Khi nào thì sử dụng cái gì???

• Thực sự khi bắt đầu với flash, tất cả mọi người đều không thể phân biệt được việc phải sử dụng đối tượng nào vào lúc nào. Tuy thế, kinh nghiệm cho thấy:

- Khi load các đối tượng text, xml, html…. Có nghĩa là các file thuộc kiểu text, mà đường dẫn được biết đến rõ ràng, ta sử dụng URLLoader

- Khi load các đối tượng multimedia,ta dùng đối tượng Loader.

- Khi cần connect client – server để download hay upload, hay cần sử dụng giao diện đồ họa để lựa chọn file, hoặc cần ghi file ra local ta sử dụng fileReference

Page 11: Lession 13: Dynamic data access

5.Bài thực hành và bài tập

• Load ảnh và load text• Bài tập: sử dụng những gì đã học tạo 1

form lưu cv của những học viên trong lớp. Ví dụ: click vào Button Ngọc anh sẽ load 1 cái ảnh của mình vào khung ảnh, load text vào khung text giới thiệu về Ngọc Anh

Page 12: Lession 13: Dynamic data access

6. Questions

Page 13: Lession 13: Dynamic data access

Thanks for listening!