1. Trang chủ
  2. » Công Nghệ Thông Tin

Lập trình hướng đối tượng OOP bai09

42 240 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 42
Dung lượng 1,15 MB

Nội dung

1 BỘ MÔN CÔNG NGHỆ PHẦN MỀM ViỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG Bài Applet Nguyễn Thị Thu Trang Nội dung Tổng quan Applet Vòng đời Applet Lớp Graphics Các phương thức Applet Tổng quan Applet • Applet chương trình Java nhúng mã nguồn HTML • Có thể chạy trình duyệt Web có cài JVM (JRE) sau tải • Nhờ applet, trang Web có thêm sức sống applet thể multimedia, tạo tương tác với user hỏi-trả lời • Có thể nguy hiểm, khơng đảm bảo tính an tồn Tổng quan Applet • Để chạy applet, trình duyệt người dùng phải bật chức Java Plug-in Tổng quan Applet • Để tạo applet, xây dựng lớp lớp Applet lớp JApplet ▫ import java.applet.Applet; class MyApplet extends Applet { } ▫ import javax.swing.JApplet; class MyApplet extends JApplet { } • Thường đặt tên lớp applet trùng tên với tên file.html java.lang.Object java.awt.Component java.awt.Container java.awt.Panel java.applet.Applet AppletTemplate import java.applet.Applet; import java.awt.*; public class AppletTemplate extends Applet { // Khai bao bien public void init() { // Khoi tao cac bien, tai cac hinh anh } public void paint(Graphics g) { // Cac thao tac ve (draw) } } Tạo tài liệu HTML chứa applet • Để thực thi applet, tạo tập tin HTML có sử dụng thẻ applet thẻ object ▫ Thẻ applet/object có hai thuộc tính:  Width  Height • Ví dụ: Applet HTML Template A Template for Loading Applets A Template for Loading Applets

Error! You must use a Java-enabled browser. Chương trình Applet import java.applet.Applet; import java.awt.Graphics; public class FirstApplet extends Applet { public void paint(Graphics g) { g.drawString("This is my first applet!",20,100); } } appletviewer FirstApplet.java Ctrl + (Textpad) 10 Chương trình Applet (2) • Kế thừa từ lớp Applet • Đồ họa từ Abstract Window Toolkit (AWT) • Chạy sau biên dịch: ▫ Trên cmd: appletviewer FirstApplet.html appletviewer FirstApplet.java ▫ Textpad: Ctrl + 28 Nội dung Tổng quan Applet Vòng đời Applet Lớp Graphics Các phương thức Applet 29 Các phương thức khác của Applet • getCodeBase, getDocumentBase ▫ Lấy URL của: Applet file - getCodeBase HTML file - getDocumentBase • getParameter(String name) ▫ Lấy giá trị từ phần tử PARAM HTML file • getSize() ▫ Trả Dimension (width, height) applet • getGraphics() ▫ Lấy đối tượng Graphics applet ▫ Đối tượng Graphics không tồn giữa các lần gọi paint() 30 import java.applet.*; import java.awt.*; public class Circle extends Applet{ public void paint(Graphics g) { Dimension d = getSize(); int xc = d.width / 2; int yc = d.height / 2; int radius = (int)((d.width < d.height) ? 0.4 * d.width : 0.4 * d.height); g.drawOval(xc - radius, yc - radius, * radius, * radius); } } 31 Các phương thức khác (2) • showDocument () getAppletContext().showDocument(java.net.URL url) getAppletContext().showDocument(java.net.URL url, String targetWindow) Hiển thị tài liệu trình duyệt • showStatus(String str) ▫ Hiển thị xâu dòng trạng thái cuối trình duyệt • Cursor getCursor(), setCursor(Cursor cur) ▫ Lấy thiết lập Cursor cho chuột, ví dụ CROSSHAIR_CURSOR, HAND_CURSOR, WAIT_CURSOR Ví dụ import java.applet.Applet; import java.awt.Graphics; public class TestApplet extends Applet { public void paint(Graphics g) { g.drawString("This is my first applet!", 20, 100); showStatus("Applet is running!"); g.drawString("Context: " + getAppletContext(), 20, 120); } } 32 33 Các phương thức khác (3) • getAudioClip, play ▫ Lấy tệp âm từ vị trí từ xa và chơi nó ▫ JDK 1.1 hỗ trợ au Java còn hỗ trợ thêm MIDI, aiff và wav • getBackground, setBackground ▫ Lấy về/thiết lập màu cho applet ▫ Lớp SystemColor cung cấp truy cập đến các màu màn hình • getForeground, setForeground ▫ Lấy về/thiết lập màu vẽ applet (màu mặc định cho các thao tác vẽ - draw) 34 Ví dụ import java.applet.*; import java.awt.*; public class BackgroundForeground extends Applet { public void paint(Graphics g) { setBackground(Color.yellow); setForeground(Color.blue); g.drawLine(0, 0, 200, 200); g.fillRect(100, 40, 50, 50); } } 35 Phần tử APPLET HTML file • Các thuộc tính bắt buộc ▫ CODE  Chỉ tên lớp Java cần tải  Tên tệp thông dịch với thư mục trang HTML (mặc định) trừ CODEBASE cung cấp ▫ WIDTH và HEIGHT  Chỉ vùng mà applet sẽ hiển thị  Các giá trị đưa theo pixel theo phần trăm cửa sổ trình duyệt 36 Phần tử APPLET HTML file (2) • Các thuộc tính khác ▫ ALIGN, HSPACE, và VSPACE  Kiểm soát vị trí và khoảng cách với viền theo pixel ▫ ARCHIVE  Chỉ các tệp JAR (tệp zip với phần mởi rộng jar) chứa tất các lớp và hình ảnh sử dụng bởi applet  Tiết kiệm đáng kể thời gian tải nhiều tệp class ▫ NAME  Tên applet dùng cho việc liên kết với các applet khác với JavaScript ▫ MAYSCRIPT (không chuẩn)  Cho phép JavaScript điều khiển applet 37 Ví dụ: Thiết lập thuộc tính Param Customizable HelloWWW Applet Error! You must use a Java-enabled browser. Error! You must use a Java-enabled browser. Error! You must use a Java-enabled browser. 38 Applet HelloWWW2 đọc các tham sớ • Sử dụng getParameter(name) để lấy giá trị phần tử PARAM, tên tham số có phân biệt chữ hoa chữ thường import java.applet.Applet; import java.awt.*; public class HelloWWW2 extends Applet { public void init() { setFont(new Font("SansSerif", Font.BOLD, 30)); Color background = Color.GRAY; Color foreground = Color.DARK_GRAY; String backgroundType = getParameter("BACKGROUND"); Applet HelloWWW2 đọc các tham số 39 if (backgroundType != null) { if (backgroundType.equalsIgnoreCase("LIGHT")){ background = Color.WHITE; foreground = Color.BLACK; } else if (backgroundType.equalsIgnoreCase("DARK")){ background = Color.BLACK; foreground = Color.WHITE; } } setBackground(background); setForeground(foreground); } public void paint(Graphics g) { g.drawString("Hello, World Wide Web.", 5, 35); } } 40 Lấy tham số từ HTML – Kết quả 41 Sử dụng JavaJump.html Jumping Java Jumping Java

Ngày đăng: 12/01/2016, 21:21

TỪ KHÓA LIÊN QUAN

w