JAVA TREE

        Ðây là 1 Java Applet giúp bạn trình bày trang Web theo kiểu cây thư mục của Windows.

        - Mỗi đề mục sẽ có 2 biểu tượng khác nhau để hiển thị tình trạng đang mở rộng hay đang thu gọn.

        - Khi bạn bấm dấu cộng trước đề mục nào là bạn muốn liệt kê đề mục con chứa trong đề mục nầy, khi bạn bấm dấu trừ là bạn muốn rút gọn lại, không cần hiển thị đề mục con.

        - Bạn có thể thay đổi màu cho từng thành phần trong cây thư mục. Thí dụ: đề mục thường, đề mục đang chọn, màu nền, màu chọn...

Image51.gif (28874 bytes)          Trọn gói phần mềm nầy có kèm các hướng dẫn sử dụng. Chúng tôi xin nói thêm về cách tạo trang Web có Java Applet nầy như sau:

       1/ Bạn tạo trang Web có 2 Frame: Bên trái sử dụng Java Tree để hiển thị theo dạng cây thư mục. Bên phải hiển thị nội dung đề mục được chọn bên trái.

        2/ Phân tích vài điểm cần chú ý về mặt mã nguồn trong nội dung trang Web dùng Java Tree:

        A/ Chèn hình và Text (kèm định dạng) giới thiệu vào đầu trang Web

1/ <p align="center"><img src="images/logo_ani.gif" alt="Auscomp Logo" hspace="5" vspace="5" width="82" height="48"><br>

2/ <font color="#000000" size="2" face="Arial"><strong>Making your</strong></font><br>

3/ <font color="#000000" size="2" face="Arial"><strong>Web presence felt!</strong></font> </p>

        B/ Chỉ định kích thước khung bao cho phần hiển thị dạng cây thư mục, tính bằng pixer.

4/ <APPLET CODE="JAVATreeR.class" WIdtH=220 HEIGHT=300>

        Chú ý: Khung nầy chính là khung của Applet, độc lập với khung của Frame. Khi đề mục liệt kê vượt khổ sẽ tự động xuất hiện thanh cuốn ngang và dọc riêng cho Applet. Bạn phải tính toán để tránh việc xuất hiện cùng lúc thanh cuộn của Applet và thanh cuộn của Frame, bạn có thể Set giá trị khung vượt quá giá trị Frame để chỉ sử dụng thanh cuộn của Frame.

        C/ Chỉ định màu cho việc hiển thị

5/ <PARAM NAME="BACKGROUND" VALUE="255,255,255">

6/ <PARAM NAME="FOREGROUND" VALUE="0,0,0">

<PARAM NAME="SELBACKGRouND" VALUE="0,0,0">

7/ <PARAM NAME="SELFOREGROUND" VALUE="255,255,0">

        Chú ý: Khi bạn chỉ định sai giá trị, Applet sẽ lấy giá trị mặc nhiên.

        D/ Tạo cấu trúc cây

        Số trong ngặc () là số dùng để phân tích, không có trong mã nguồn

8/ <(1)PARAM NAME="I0" (2)VALUE="THANK YOU FOR PURCHASING;(3) None ; (4) none; (5) 0; (6) jimages/Contact.gif; (7) jimages/Contact.gif">

        (1) Gía trị Param name="Ixxx" phải liên tục từ trên xuống. Nếu bị nhẩy số, các dòng tiếp theo sẽ không có giá trị (không hiển thị).

        (2) Giá trị Value="dòng Text" sẽ được hiển thị là tên đề mục.

        (3) Trang Web liên kết với đề mục trong phần (2), sẽ được mở khi bấm kép Mouse lên đề mục. Ðịa chỉ liên kết có thể là tuyệt đối hay tương đối.

        (4) Frame chỉ định để hiển thị trang Web (3) liên kết với đề mục.

        (5) Chỉ định cấp độ của đề mục, đề mục có thứ tự cấp độ lớn (đề mục con) sẽ nằm trong đề mục có cấp độ nhỏ (đề mục mẹ).

        Chú ý: Các dòng mã hiển thị đề mục con phải được viết tiếp theo ngay sau dòng mã hiển thị đề mục mẹ và phải có số thứ tự liên tục.

        (6) Chỉ định file hình dùng làm biểu tượng cho đề mục lúc ở trạng thái rút gọn (có dấu cộng).

        (7) Chỉ định file hình dùng làm biểu tượng cho đề mục lúc ở trạng thái mở rộng (có dấu trừ).

        Chú ý: Nếu đề mục không có đề mục con, giá trị (6) và (7) nên chỉ định giống nhau.

9/ <PARAM NAME="I1" VALUE="Before you begin; None; none; 0; jimages/BookC.gif ; jimages/BookO.gif">

        Ðề mục "Before you begin" không có liên kết với trang Web khác, cấp độ "0", vì là đề mục mẹ nên có 2 biểu tượng hiển thị cho 2 trạng thái, địa chỉ file hình dùng làm biểu tượng là địa chỉ tương đối (trong thí dụ nầy là nằm trong thư mục con tên jimages so với trang Web chính là thư mục gốc).

        Chú ý: Các các dòng lịnh hiển thị đề mục có cấp độ lớn hơn tiếp theo dòng lịnh nầy mặc nhiên được coi như "con, cháu..." của đề mục nầy cho đến khi gặp dòng lịnh có cấp độ tương đương.

10/ <PARAM NAME="I2" VALUE="Who made it; who.htm; main; 1; jimages/QuestionMark.gif ; jimages/QuestionMark.gif">

        Ðề mục "Who made it" được liên kết với file "who.htm". Frame hiển thị file liên kết có tên là "Main" (frame bên phải trong thí dụ). Cấp độ 1 (con của cấp độ 0). 2 biểu tượng trạng thái giống nhau.

        Chú ý: Ðề mục nầy không có đề mục con vì dòng tiếp theo có cấp độ tương đương.

11/ <PARAM NAME="I3" VALUE="E-Mail; mailto:teamYỵauscomp.com.au; _self; 1; jimages/Mail.gif; jimages/Mail.gif">

        Ðề mục "E-Mail" liên kết với lịnh gởi Email (mailto:) đến địa chỉ liệt kê (teamYỵauscomp.com.au).

12/ <PARAM NAME="I4" VALUE="Web site - Australia; http://www.auscomp.com.au; _blank; 1; jimages/Earth.gif; jimages/Earth.gif">

        Ðề mục "Web site-Australia" liên kết đến địa chỉ tuyệt đối của Web site hhht://www.auscomp.com. Web site nầy sẽ được mở trong 1 cửa sổ trống (blank)

13/ <PARAM NAME="I5" VALUE="Web site - America; http://www.auscomp.com; _blank; 1; jimages/Earth.gif; jimages/Earth.gif">

14/ <PARAM NAME="I6" VALUE="Copyright; Copyright.htm; main; 1; jimages/Caution.gif; jimages/Caution.gif">

15/ <PARAM NAME="I7" VALUE="*** Place holder">

16/ <PARAM NAME="I8" VALUE="*** Place holder">

17/ <PARAM NAME="I9" VALUE="*** Place holder">

        Vì các dòng lịnh phải có số thứ tự liên tục nên khi thêm dòng lịnh vào giửa bạn bắt buộc phải thay đổi số thứ tự các dòng tiếp sau. Ðể tránh phiền phức nầy, bạn có thể dùng 3 dòng mã lịnh 15, 16, 17 để giử chổ trước cho các đề mục bổ sung sau nầy và chúng không được hiển thị do Value="*** Place holder". Khi cần bổ sung, bạn chỉ việc sửa đổi nội dung dòng lịnh nầy cho phù hợp mà không cần thay đổi số thứ tự.

18/ <PARAM NAME="I8" VALUE="Setup; none; none; 0; jimages/SetupC.gif; jimages/SetupO.gif">

19/ <PARAM NAME="I9" VALUE="Syntax; syntax.htm; main; 1; jimages/BriefCaseC.gif;jimages/BriefCaseO.gif">

        2 dòng 18 (đề mục "Setup"), 19 (đề mục "Syntax") sẽ không được hiển thị do có số thứ tự (I8, I9) trùng với 2 dòng trước đó là 16 và 17 nên bị vô hiệu hóa.

        Chú ý: Nếu bạn bỏ 2 dòng 16, 17 thì 2 dòng 18, 19 sẽ được hiển thị và cấu trúc cây sẽ thay đổi vì dòng 18 có cấp độ ngang với dòng 9 nên tạo ra 1 nhánh mới. Các dòng tiếp theo có cấp độ lớn hơn sẽ thuộc về nhánh nầy (đề mục "setup").

        Các dòng tiếp theo bạn có thể suy luận tương tự.

        Chú ý: Các bạn cần tuân thủ nguyên tắc sau:

        Số thứ tự dòng lịnh phải liên tục, không được trùng lấp hay nhẩy bỏ số.

        Các đề mục có cấp độ lớn sẽ nằm ngay sau đề mục có cấp độ nhỏ hơn và thuộc về đề mục nầy. Các đề mục ở gốc sẽ có cấp độ là "0".