ดาวน์โหลดงานนำเสนอ
งานนำเสนอกำลังจะดาวน์โหลด โปรดรอ
1
รู้จักและใช้งาน Applet
บทที่ 19 รู้จักและใช้งาน Applet
2
รู้จักและใช้งาน Applet
โปรแกรมที่เขียนด้วยภาษา Java ถูกออกแบบให้ประมวลผลผ่านเว็บบราวเซอร์ได้ โดยสร้างคลาสที่สืบทอดคุณสมบัติมาจากคลาส Applet ซึ่งอยู่ในแพ็คแกจjava.applet และกำหนด access modifier ให้เป็นแบบ public เพื่อให้เรียกใช้งานผ่านเว็บบราวเซอร์ได้ มีรูปแบบการใช้งานดังนี้ import java.applet.*; public class AppletName extends Applet { } โดยที่ AppletName เป็นชื่อคลาส
3
การทำงานของ Applet
4
กระบวนการหลักของการสร้าง Applet
การสร้าง Applet เริ่มต้นสร้างจากคลาส Applet ซึ่งมีส่วนของโปรแกรมเหมือนกับการเขียน Java Application ทั่วไป จากนั้นเรียกใช้ Applet ที่สร้างขึ้นนี้ โดยนำชื่อไฟล์ไปแทรกในส่วนของคำสั่ง HTML
5
การส่งค่าตัวแปรจากไฟล์ HTML เข้าไปใช้ในคลาส Applet
สามารถส่งไปพร้อมกับการเรียกใช้หรือประมวลผลในคลาส Applet ที่ต้องการได้ โดยตัวแปรดังกล่าวจะต้องถูกเขียนแทรกอยู่ใน tag ของ <applet> และ </applet> ซึ่งมีรูปแบบดังนี้ <applet code="AppletName.class" width=" widthValue" height="heightValue"> <param name=”paramName1” value=”paramValue1”> <param name=”paramName2” value=”paramValue2”> </applet> โดยที่ AppletName เป็นชื่อคลาส paramName1 เป็นชื่อตัวแปรที่ใช้ส่งค่าตัวที่ 1 paramName2 เป็นชื่อตัวแปรที่ใช้ส่งค่าตัวที่ 2 paramValue1 เป็นค่าตัวแปรที่ใช้ส่งค่าตัวที่ 1 paramValue2 เป็นค่าตัวแปรที่ใช้ส่งค่าตัวที่ 2 widthValue เป็นค่าความกว้าง heightValue เป็นค่าความสูง ในคลาส Applet จะรับค่าที่ส่งผ่านตัวแปรในไฟล์ HTML ด้วยเมธอด getParameter(paraname) โดย paraname ต้องเป็นชื่อที่ตรงกับชื่อตัวแปรในไฟล์ HTML ด้วย ดังตัวอย่างต่อไปนี้
6
โปรแกรมแสดงผลข้อความที่รับมาจากไฟล์ HTML
7
เมธอดวาดรูปทรงต่างๆ และการระบายสี (1)
กำหนดให้ g เป็นตัวแปรประเภท Graphics เมธอด drawString() แสดงข้อความ s ที่ตำแหน่ง x, y g.drawString(s, x, y); เมธอด drawLine() วาดเส้นที่จุดเริ่มต้น x1, y1 และจุดสิ้นสุด x2, y2 g.drawLine(x1, y1, x2, y2); เมธอด drawRect() วาดสี่เหลี่ยมมุมแหลมแบบโปร่งที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h g.drawRect(x, y, w, h); เมธอด drawRoundRect() วาดสี่เหลี่ยมมุมมนแบบโปร่งที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h โดยมีความกว้างของสี่เหลี่ยมที่กำหนดขนาดมุมมนเท่ากับ arc_w และความสูงของสี่เหลี่ยมที่กำหนดขนาดมุมมนเท่ากับ arc_h g.drawRoundRect(x, y, w, h, arc_w, arc_h);
8
เมธอดวาดรูปทรงต่างๆ และการระบายสี (2)
เมธอด drawOval() วาดวงกลมหรือวงรีแบบโปร่งที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h g.drawOval(x, y, w, h); เมธอด drawArc() วาดเส้นโค้งแบบโปร่งที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h โดยมีมุมจุดเริ่มของส่วนของวงกลมหรือวงรีเท่ากับ a1 และขนาดของมุมวัดตั้งแต่จุดเริ่มต้นของส่วนของวงกลมหรือวงรีไปจนถึงจุดสิ้นสุดเท่ากับ a2 g.drawArc(x, y, w, h, a1, a2); เมธอด fillRect() วาดสี่เหลี่ยมทึบที่ตำแหน่ง x, y ซึ่งมีความกว้างเท่ากับ w และความสูงเท่ากับ h g.fillRect(x, y, w, h); เมธอด fillRoundRect() วาดสี่เหลี่ยมมุมมนทึบที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h โดยมีความกว้างของสี่เหลี่ยมที่กำหนดขนาดมุมมนเท่ากับ arc_w และความสูงของสี่เหลี่ยมที่กำหนดขนาดมุมมน เท่ากับ arc_h g.fillRoundRect(x, y, w, h, arc_w, arc_h); เมธอด fillOval() วาดวงรีทึบที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h g.fillOval(x, y, w, h); เมธอด fillArc() วาดรูปเสี้ยวที่ตำแหน่ง x, y กว้างเท่ากับ w และสูงเท่ากับ h โดยมีมุมจุดเริ่มของส่วนของวงกลมหรือวงรีเท่ากับ a1 และขนาดของมุมวัดตั้งแต่จุดเริ่มต้นของส่วนของวงกลมหรือวงรีไปจนถึงจุดสิ้นสุด เท่ากับ a2 g.fillArc(x, y, w, h, a1, a2);
9
ตัวเลขจำนวนเต็มของ ระบบ RGB
สี ตัวเลขจำนวนเต็มของ ระบบ RGB ดำ (black) (0, 0, 0) ขาว (white) (255, 255, 255) แดง (red) (255, 0, 0) น้ำเงิน (blue) (0, 0, 255) เหลือง (yellow) (255, 255, 0) เขียว (green) (0, 255, 0) เทา (gray) (128, 128, 128) ชมพู (pink) (255, 175, 175)
10
โปรแกรมวาดรูปทรงและแสดงผลข้อความโดยการใช้สีแบบต่างๆ
g.drawOval(50, 110, 100, 30); g.drawString("drawOval", 70, 130); g.setColor(Color.black); g.fillOval(50, 145, 100, 30); g.setColor(Color.white); g.drawString("fillOval", 80, 165); g.setColor(Color.red); g.drawArc(10, 28, 180, 180, 180, 180); g.drawString("drawArc2", 70, 195); c = new Color(0, 78, 152); g.setColor(c); g.fillOval(200, 75, 90, 90); g.setColor(Color.white); g.drawString("fillCircle", 222, 115); g.drawString("(0,78,152)", 215, 135); c = new Color(64, 0, 128); g.setColor(c); g.fillArc(300, 20, 180, 180, 0, 90); g.setColor(Color.white); g.drawString("(64,0,128)", 300, 25); c = new Color(255, 132, 9); g.setColor(c); g.fillArc(300, 20, 180, 180, 90, 90); g.setColor(Color.white); g.drawString("(255,132,9)", 420, 25); g.setColor(Color.yellow); g.fillArc(300, 20, 180, 180, 180, 90); g.setColor(Color.red); g.fillArc(300, 20, 180, 180, 270, 90); g.setColor(Color.white); g.drawString("fillArc", 370, 215); } import java.applet.*; import java.awt.*; public class ColorfulShape extends Applet { Font fn; Color c; public void init() { setBackground(Color.lightGray); fn = new Font("Tahoma", Font.BOLD, 12); } public void paint(Graphics g) { g.setFont(fn); g.setColor(Color.yellow); g.drawArc(10, 20, 180, 180, 0, 180); g.drawString("drawArc1", 70, 40); g.setColor(Color.magenta); g.drawRect(50, 50, 100, 15); g.drawString("drawRect", 70, 62); g.setColor(Color.blue); g.fillRect(50, 70, 100, 15); g.setColor(Color.white); g.drawString("fillRect", 80, 82); g.setColor(Color.green); <html> <head> <title>ColorfulShape</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <applet code="ColorfulShape.class" HEIGHT=220 WIDTH=500></applet> </body> </html>
11
ทำงานกับเมาส์และคีย์บอร์ด
private class TextListener implements ActionListener { public void actionPerformed(ActionEvent e) { String ans = new String(msg.getPassword()); label2.setText("Your Message is " + ans); } private class MyMouseListener implements MouseListener { public void mouseReleased(MouseEvent e) { public void mouseEntered(MouseEvent e) { label2.setBackground(Color.red); public void mouseExited(MouseEvent e) { label2.setBackground(Color.blue); public void mouseClicked(MouseEvent e) { public void mousePressed(MouseEvent e) { import javax.swing.*; import java.applet.*; import java.awt.*; import java.awt.event.*; public class KeyMouseTest extends Applet { JLabel label1, label2; JPasswordField msg; Font fn = new Font("Microsoft Sans Serif", Font.BOLD, 14); public void init() { setBackground(Color.cyan); label1 = new JLabel("Enter Message", SwingConstants.CENTER); label1.setPreferredSize(new Dimension(120, 25)); msg = new JPasswordField(10); label2 = new JLabel("Show Your Message Here", SwingConstants.CENTER); label2.setOpaque(true); label2.setBackground(Color.blue); label2.setForeground(Color.white); label2.setPreferredSize(new Dimension(200, 25)); label1.setFont(fn); msg.setFont(fn); label2.setFont(fn); add(label1); add(msg); add(label2); msg.addActionListener(new TextListener()); label2.addMouseListener(new MyMouseListener()); } <html> <head> <title>KeyMouseTest</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> </head> <body> <applet code="KeyMouseTest.class" width="300" height="70"></applet> </body> </html>
งานนำเสนอที่คล้ายกัน
© 2024 SlidePlayer.in.th Inc.
All rights reserved.