Applet 2 container and action_listener
-
Upload
nitigan-nakjuatong -
Category
Education
-
view
233 -
download
1
description
Transcript of Applet 2 container and action_listener
Container & ActionListener
ssc
1
Container
ใหนกศกษาสราง class แบบ Applet
ชอวา ConApplet
http://202.44.47.108/~ssc/ConApplet.html
ssc
2
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ public void paint(Graphics g){ }}
ssc
3
Container
ใหแสดงชอ คณออกมา
ssc
4
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ public void paint(Graphics g){ g.drawString("Supaporn Simcharoen",20,450); }}
ssc
5
Container
ใหสราง Container ขนมา
ssc
6
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ public void paint(Graphics g){ g.drawString("Supaporn Simcharoen",20,450); }
public void init(){ Container c = getContentPane(); c.setLayout( new FlowLayout()); }}
ssc
7
Container
สราง JLabel ขนมา 1 JLabel
ใชขอความคาวา “Show Number”
ssc
8
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{
private JLabel sNumLabel; public void paint(Graphics g){
! super.paint(g); g.drawString("Supaporn Simcharoen",20,450); }
public void init(){ Container c = getContentPane(); c.setLayout( new FlowLayout());
sNumLabel = new JLabel("Show Label"); c.add(sNumLabel); }}
ssc
9
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{
private JLabel sNumLabel; public void paint(Graphics g){
! super.paint(g); g.drawString("Supaporn Simcharoen",20,450); }
public void init(){ Container c = getContentPane(); c.setLayout( new FlowLayout());
sNumLabel = new JLabel("Show Label"); c.add(sNumLabel); }}
ssc
ประกาศตวแปรJLabel
สรางมนขนมา
ใสมนเขาไปท Container
10
Container
สราง JTextField ขนมา 1 อน
ssc
11
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ private JLabel sNumLabel;
private JTextField numField; public void paint(Graphics g){
! super.paint(g); g.drawString("Supaporn Simcharoen",20,450); } public void init(){ Container c = getContentPane(); c.setLayout( new FlowLayout()); sNumLabel = new JLabel("Show Label"); c.add(sNumLabel);
numField = new JTextField(5); c.add(numField); }}
ssc
12
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ private JLabel sNumLabel;
private JTextField numField; public void paint(Graphics g){
! ... } public void init(){ Container c = getContentPane(); c.setLayout( new FlowLayout()); sNumLabel = new JLabel("Show Label"); c.add(sNumLabel);
numField = new JTextField(5); c.add(numField); }}
ssc
สรางมนขนมา
ใสมนเขาไปท Container
ประกาศตวแปรJTextField
13
Container
สราง JButton ขนมา 4 ปม โดยใหเปนปม 1 , 2, +, =, และ C
ssc
14
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet{ private JLabel sNumLabel; private JTextField numField;
private JButton btnOne,btnTwo; : ปม 1, 2
private JButton btnAdd; : ปม +
private JButton btnAnswer; : ปม =
private JButton btnClear; : ปม C ...
sscประกาศตวแปร JButton
ทงหมด
15
... numField = new JTextField(10); c.add(numField);
btnOne = new JButton(" 1 "); c.add(btnOne); btnTwo = new JButton(" 2 "); c.add(btnTwo); btnAdd = new JButton(" + "); c.add(btnAdd); btnAnswer = new JButton(" = "); c.add(btnAnswer); btnClear = new JButton(" C "); c.add(btnClear); }}
ssc
สรางพวกมนขนมา
16
Container
เมอคลกท ปม 1
ใหเลข 1 ไปแสดงท JTextField
ssc
17
import java.awt.*;import javax.swing.*;
import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{
... public void init(){
... }
public void actionPerformed(ActionEvent event){
}}
ssc
import packet
implements class
สราง method เพอรองรบการกระทา
18
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void init(){ ...
btnOne = new JButton(" 1 "); btnOne.addActionListener(this); c.add(btnOne); } public void actionPerformed(ActionEvent event){
}}
ssc
เพมการรองรบการกระทาทปม 1
19
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ...
public void actionPerformed(ActionEvent event){ if (event.getSource() == btnOne){ numField.setText("1"); } repaint(); }}
ssc
setText เอาไวใชสาหรบใสคาใหกลบ textField ซงจะตองเปน String
เพมในสวนของการ check การกระทาเมอกดปม 1
20
Container เมอคลกท ปม 1 อกครง
ใหเลข 1 ไปแสดงท JTextField
ตอจากเลข 1 ตวกอนหนานได
ssc
21
Container คาใบ:
วธในการดงขอมลใน textField ใช numField.getText();
ดงออกมาแลวจะไดเปน String
วธในการตอ String ใชเครองหมาย +
ssc
22
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void actionPerformed(ActionEvent event){ if (event.getSource() == btnOne){
numField.setText(numField.getText() + "1"); } repaint(); }}
ssc
23
Container
ทาใหปมเลข 2 ทางานเหมอนปมเลข 1
ssc
24
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void init(){ ...
btnTwo = new JButton(" 2 "); btnTwo.addActionListener(this); c.add(btnTwo); } public void actionPerformed(ActionEvent event){ ... }}
ssc
เพมการรองรบการกระทาทปม 2
25
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ...
public void actionPerformed(ActionEvent event){ ... else if (event.getSource() == btnTwo){ numField.setText(numField.getText() + "2"); } repaint(); }}
ssc
เพมในสวนของการ check การกระทาเมอกดปม 2
26
Container ใหประกาศตวแปรชนด int เปนแบบ private 3 ตวคอ num1, num2 และ ans
โดยใหคาเรมตน 3 ตวน = 0
num1 ไวเกบคาตวเลขชดแรก num2 ไวเกบคาตวเลขชดทสอง ans ไวเกบคาผลลพธ
ssc
27
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet implements ActionListener{ private JLabel sNumLabel; private JTextField numField;
private JButton btnOne,btnTwo; : ปม 1, 2
private JButton btnAdd; : ปม +
private JButton btnAnswer; : ปม =
private JButton btnClear; : ปม C
private int ans=0,num1=0,num2=0; ...
ssc
28
Container
แสดงคาของ num1, num2 และ ans
ออกมาโดยใช g.drawString
ssc
29
import java.awt.*;import javax.swing.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void paint(Graphics g){
! super.paint(g); g.drawString("Supaporn Simcharoen",20,450);
g.drawString("num1="+num1,50,300); g.drawString("num2="+num2,50,350); g.drawString("ans="+ans,50,400); } ...}
ssc
30
Container เมอคลกทปม + ใหนาคาใน textField
ไปเกบไวใน num1
วธการแปลง string เปน int
ตวแปร int = Integer.parseInt( ขอมลทเปน String );
ssc
31
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void init(){ ...
btnAdd = new JButton(" + "); btnAdd.addActionListener(this); c.add(btnAdd); } public void actionPerformed(ActionEvent event){ ... }}
ssc
เพมการรองรบการกระทาทปม +
32
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ...
public void actionPerformed(ActionEvent event){ ... else if (event.getSource() == btnAdd){ num1 = Integer.parseInt( numField.getText() ); numField.setText(""); } repaint(); }}
ssc
เพมในสวนของการ check การกระทาเมอกดปม +
33
Container
เมอคลกทปม = ใหนาคาใน textField
ไปเกบไวใน num2
นา num1 + num2 และเกบไวใน ans
ssc
34
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ... public void init(){ ...
btnAnswer = new JButton(" = "); btnAnswer.addActionListener(this); c.add(btnAnswer); } public void actionPerformed(ActionEvent event){ ... }}
ssc
เพมการรองรบการกระทาทปม =
35
import java.awt.*;import javax.swing.*;import java.awt.event.*;
public class ConApplet extends JApplet implements ActionListener{ ...
public void actionPerformed(ActionEvent event){ ... else if (event.getSource() == btnAnswer){ num2 = Integer.parseInt( numField.getText() ); ans = num1+num2; numField.setText(""+ans); } repaint(); }}
ssc
เพมในสวนของการ check การกระทาเมอกดปม =
36
การบาน ใหนกศกษาเพมปม 3, 4, 5, 6, 7, 8, 9, 0
และใหสามารถทางานไดดงตวอยางน
http://202.44.47.108/~ssc/ConApplet_hw.html
ssc
37