Cấu trỳc cơ bản và vũng đời của một Applet

Một phần của tài liệu Bài giảng ngôn ngữ lập trình Java doc (Trang 105 - 107)

Một chương trỡnh Applet đầy đủ sẽ bao gồm cỏc thành phần như sau: import java.applet.Applet;

public class myApplet extends Applet{ public void init(){ ... }

public void start(){ ... } public void stop() { ... } public void destroy() { ... } .... //Cỏc phương thức khỏc }

Nếu dựng JApplet thỡ ta cú khai bỏo phần đầu như sau: import javax.swing.JApplet;

public class myApplet extends JApplet{…}

Vũng đời của một Applet được đỏnh dấu bởi cỏc sự kiện diễn ra ở mỗi giai đoạn, lập trỡnh viờn cần nắm được ý nghĩa của từng giai đoạn để cú thể viết code điều khiển Applet:

1. Giai đoạn init: Thực hiện cỏc cụng việc khởi tạo một Applet. Giai đoạn này được bắt đầu ngay sau khi thẻ <param> nằm trong thẻ <applet> được xử lý. Cỏc hành động như thờm cỏc thành phần giao diện người dựng GUI được thực hiện ở đõy. 2. Giai đoạn start: Được thực hiện ngay sau khi giai đoạn init được thực hiện xong.

Nú cũng được gọi bất cứ khi nào người dựng chuyển sang một trang web khỏc rồi quay lại trang cú applet. Do đú, code nằm trong start cú thể được thực hiện nhiều lần trong khi code trong init chỉ được thực hiện 1 lần.

3. Giai đoạn stop: Được thực hiện khi người dựng rời khỏi trang web chứa applet. Do đú, code nằm trong stop cũng cú thể được thực hiện nhiều lần.

4. Giai đoạn destroy: Được thực hiện khi người sử dụng tắt trỡnh duyệt.

Khi viết một applet, chỳng ta khụng phải khi nào cũng cài đặt đầy đủ 4 phương thức mà tựy theo nhu cầu.

Vớ dụ sau xõy dựng một applet cho phộp vẽ liờn tiếp bắt đầu từ vị trớ giữa applet. import java.applet.*;

import java.awt.*; import java.awt.event.*;

public class AppletSample extends Applet {

Point curentPoint; // Lưu tọa độ điểm hiện tại public void init()

{

curentPoint = new Point(this.getWidth()/2,this.getHeight()/2); this.setBackground(Color.CYAN); // đặt màu nền của applet }

public void start() {

this.addMouseListener( new MouseAdapter() {

public void mouseClicked(MouseEvent e) { drawOnApplet(curentPoint,e.getPoint()); curentPoint = e.getPoint(); } } ); }

public void drawOnApplet(Point p1, Point p2) {

Graphics g = this.getGraphics(); g.drawLine(p1.x,p1.y,p2.x,p2.y); }

Một phần của tài liệu Bài giảng ngôn ngữ lập trình Java doc (Trang 105 - 107)