import java.awt.*;
import java.awt.event.*;
import java.awt.datatransfer.*;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Calculator extends Frame implements ActionListener
{
private Button keys[];
private Panel keypad;
private TextField lcd;
private double op1;
private boolean first;
private boolean foundkey;
private boolean clearText;
private int lastOp;
private DecimalFormat calcPattern;
public Calculator()
{
MenuBar mnuBar = new MenuBar();
setMenuBar(mnuBar);
Menu mnuFile = new Menu("File",true);
mnuBar.add(mnuFile);
MenuItem mnuFileExit = new MenuItem("Exit");
mnuFile.add(mnuFileExit);
Menu mnuEdit = new Menu("Edit",true);
mnuBar.add(mnuEdit)
MenuItem mnuEditClear = new MenuItem("Clear");
mnuEdit.add(mnuEditClear);
mnuEdit.insertSeparator(1);
MenuItem mnuEditCopy = new MenuItem("Copy");
mnuEdit.add(mnuEditCopy);
MenuItem mnuEditPaste = new MenuItem("Paste");
mnuEdit.add(mnuEditPaste);
//MenuItem mnuEditTest = new MenuItem("Test");
http://mnuEdit.add(mnuEditTest);
Menu mnuAbout = new Menu("About",true);
mnuBar.add(mnuAbout);
MenuItem mnuAboutCalculator = new MenuItem("About Calculator");
mnuAbout.add(mnuAboutCalculator);
mnuFileExit.addActionListener(this);
mnuEditClear.addActionListener(this);
mnuEditCopy.addActionListener(this);
mnuEditPaste.addActionListener(this);
mnuAboutCalculator.addActionListener(this);
//assign command
mnuFileExit.setActionCommand("Exit");
mnuEditClear.setActionCommand("Clear");
mnuEditCopy.setActionCommand("Copy");
mnuEditPaste.setActionCommand("Paste");
mnuAboutCalculator.setActionCommand("About");
//constuct component
lcd = new TextField(20);
lcd.setEditable(false);
keypad = new Panel();
keys = new Button[16];
first = true;
op1 = 0.0;
clearText = true;
lastOp = 0;
calcPattern = new DecimalFormat("########.########");
for(int i=0; i<=9;i++)
{keys[i] = new Button(String.valueOf(i));}
keys[10] = new Button("/");
keys[11] = new Button("*");
keys[12] = new Button("-");
keys[13] = new Button("+");
keys[14] = new Button("=");
keys[15] = new Button(".");
setLayout(new BorderLayout());
keypad.setLayout(new GridLayout(4,4,10,10));
for(int i=7;i<=10;i++)
keypad.add(keys[i]);
for(int i=4;i<=6;i++)
keypad.add(keys[i]);
keypad.add(key[11]);
for(int i=1;i<=3;i++)
keypad.add(keys[i]);
keypad.add(keys[12]);
keypad.add(keys[0]);
for(int i=15;i>=13;i--)
keypad.add(keys[i]);
for(int i=0;i<keys.length;i++)
key[i].addActionListener(this);
add(lcd,BorderLayout.NORTH);
add(keypad,BorderLayout.CENTER);
addWindowListener
(
new WindowAdapter()
{
public void windowclosing(WindowEvent e)
{
System.exit(0);
}
}
);
}
public void actionPerformed(ActionEvent e)
{
String arg =e.getActionCommand();
if(arg =="Exit")
System.exit(0);
if(arg =="Clear")
{
clearText = true;
first = true;
op1 = 0.0;
lcd.setText("");
lcd.requestFocus();
}
if(arg == "Copy")
{
Clipboard cb = Toolkit.getDefaultToolkit().getSystemClipboard();
StringSelection contents = new StringSelection(lcd.getText());
cb.setContents(contents,null);
}
if(arg =="Paste")
{
}
}
}
import java.awt.event.*;
import java.awt.datatransfer.*;
import java.text.DecimalFormat;
import javax.swing.JOptionPane;
public class Calculator extends Frame implements ActionListener
{
private Button keys[];
private Panel keypad;
private TextField lcd;
private double op1;
private boolean first;
private boolean foundkey;
private boolean clearText;
private int lastOp;
private DecimalFormat calcPattern;
public Calculator()
{
MenuBar mnuBar = new MenuBar();
setMenuBar(mnuBar);
Menu mnuFile = new Menu("File",true);
mnuBar.add(mnuFile);
MenuItem mnuFileExit = new MenuItem("Exit");
mnuFile.add(mnuFileExit);
Menu mnuEdit = new Menu("Edit",true);
mnuBar.add(mnuEdit)
MenuItem mnuEditClear = new MenuItem("Clear");
mnuEdit.add(mnuEditClear);
mnuEdit.insertSeparator(1);
MenuItem mnuEditCopy = new MenuItem("Copy");
mnuEdit.add(mnuEditCopy);
MenuItem mnuEditPaste = new MenuItem("Paste");
mnuEdit.add(mnuEditPaste);
//MenuItem mnuEditTest = new MenuItem("Test");
http://mnuEdit.add(mnuEditTest);
Menu mnuAbout = new Menu("About",true);
mnuBar.add(mnuAbout);
MenuItem mnuAboutCalculator = new MenuItem("About Calculator");
mnuAbout.add(mnuAboutCalculator);
mnuFileExit.addActionListener(this);
mnuEditClear.addActionListener(this);
mnuEditCopy.addActionListener(this);
mnuEditPaste.addActionListener(this);
mnuAboutCalculator.addActionListener(this);
//assign command
mnuFileExit.setActionCommand("Exit");
mnuEditClear.setActionCommand("Clear");
mnuEditCopy.setActionCommand("Copy");
mnuEditPaste.setActionCommand("Paste");
mnuAboutCalculator.setActionCommand("About");
//constuct component
lcd = new TextField(20);
lcd.setEditable(false);
keypad = new Panel();
keys = new Button[16];
first = true;
op1 = 0.0;
clearText = true;
lastOp = 0;
calcPattern = new DecimalFormat("########.########");
for(int i=0; i<=9;i++)
{keys[i] = new Button(String.valueOf(i));}
keys[10] = new Button("/");
keys[11] = new Button("*");
keys[12] = new Button("-");
keys[13] = new Button("+");
keys[14] = new Button("=");
keys[15] = new Button(".");
setLayout(new BorderLayout());
keypad.setLayout(new GridLayout(4,4,10,10));
for(int i=7;i<=10;i++)
keypad.add(keys[i]);
for(int i=4;i<=6;i++)
keypad.add(keys[i]);
keypad.add(key[11]);
for(int i=1;i<=3;i++)
keypad.add(keys[i]);
keypad.add(keys[12]);
keypad.add(keys[0]);
for(int i=15;i>=13;i--)
keypad.add(keys[i]);
for(int i=0;i<keys.length;i++)
key[i].addActionListener(this);
add(lcd,BorderLayout.NORTH);
add(keypad,BorderLayout.CENTER);
addWindowListener
(
new WindowAdapter()
{
public void windowclosing(WindowEvent e)
{
System.exit(0);
}
}
);
}
public void actionPerformed(ActionEvent e)
{
String arg =e.getActionCommand();
if(arg =="Exit")
System.exit(0);
if(arg =="Clear")
{
clearText = true;
first = true;
op1 = 0.0;
lcd.setText("");
lcd.requestFocus();
}
if(arg == "Copy")
{
Clipboard cb = Toolkit.getDefaultToolkit().getSystemClipboard();
StringSelection contents = new StringSelection(lcd.getText());
cb.setContents(contents,null);
}
if(arg =="Paste")
{
}
}
}
Mon May 10, 2010 2:45 am by titr
» แนวคิดแบบหมวก 6 ใบ -- มาวิเคราะห์กันๆ
Fri Dec 11, 2009 12:28 am by Admin
» หาแนวร่วม ทำซัพนรก Anime จ้า *-*
Fri Oct 09, 2009 1:46 pm by สก๊อยผ่า
» ขอเรียกร้องสิทธิให้แก่ช่วงๆ กับหลินฮุ่ย!!!
Fri Oct 09, 2009 1:44 pm by สก๊อยผ่า
» มีอะไรมาให้เล่นอีกแล้ว(เกมสร้างสถานะการณ์)
Thu Sep 03, 2009 12:14 pm by Parakan
» อยากถามวิธีใช้ถุงพลาสติก
Sun Aug 09, 2009 2:34 am by Admin
» Xnac€hecklist-ใครทำชีทหายมาอ่านได้ที่นี่
Sat Aug 08, 2009 9:08 pm by Admin
» อยากไปเที่ยวทะเลอีกอ่ะ
Fri Jul 31, 2009 1:47 pm by Admin
» มีรูปให้ดู
Thu Jul 30, 2009 7:39 pm by SoHandsome