1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
|
import java.awt.*;
import java.awt.event.*;
import java.math.*;
class BigIntegerFrame
extends Frame
implements WindowListener, ActionListener{
private Button btRun; //実行ボタン
private TextField txtNum1; //左の入力する場所
private TextField txtNum2; //右の入力する場所
private Label lblAns; //答えを表示させる
private Choice chSlt; //演算子を選択で使用
private Panel pl; //コントロールを配置
public BigIntegerFrame(){
setTitle("JavaAPI");
setSize(500, 150);
txtNum1 = new TextField();
txtNum2 = new TextField();
lblAns = new Label();
btRun = new Button("実行");
chSlt = new Choice();
pl = new Panel();
//演算子の登録
chSlt.add("+");
chSlt.add("−");
chSlt.add("×");
chSlt.add("÷");
//レイアウトの設定
setLayout(null);
pl.setLayout(null);
//座標の設定
txtNum1.setBounds(50, 0, 450, 20);
txtNum2.setBounds(50, 20, 450, 20);
btRun.setBounds (50, 40, 450, 20);
lblAns.setBounds (50, 60, 450, 20);
chSlt.setBounds (10, 40, 40, 20);
pl.setBounds(0, 30 ,500, 100);
//パネルにコントロールを配置
pl.add(txtNum1);
pl.add(txtNum2);
pl.add(btRun);
pl.add(lblAns);
pl.add(chSlt);
add(pl); //パネルをアプレットに配置
btRun.addActionListener(this);
addWindowListener(this);
}
public void windowActivated(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowOpened(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowClosing(WindowEvent e){
java.lang.System.exit(0);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == btRun){
try{
BigInteger num1 =
new BigInteger
(txtNum1.getText());
BigInteger num2 =
new BigInteger
(txtNum2.getText());
switch(chSlt.getSelectedIndex()){
case 0:
num1 = num1.add(num2);
break;
case 1:
num1 = num1.subtract(num2);
break;
case 2:
num1 = num1.multiply(num2);
break;
case 3:
num1 = num1.divide(num2);
break;
}
String num = "" + num1;
lblAns.setText(num);
if(num.length() > 64){
lblAns.setText
("表示できません");
}
}
catch(java.lang.Exception err){
lblAns.setText("誤りがあります");
}
}
}
public static void main(String[] args){
BigIntegerFrame bif =
new BigIntegerFrame();
bif.show();
}
}
|
using java.awt;
using java.awt.@event;
using java.math;
class BigIntegerFrame
: Frame,
WindowListener, ActionListener{
private Button btRun; //実行ボタン
private TextField txtNum1; //左の入力する場所
private TextField txtNum2; //右の入力する場所
private Label lblAns; //答えを表示させる
private Choice chSlt; //演算子を選択で使用
private Panel pl; //コントロールを配置
public BigIntegerFrame(){
setTitle("JavaAPI");
setSize(500, 150);
txtNum1 = new TextField();
txtNum2 = new TextField();
lblAns = new Label();
btRun = new Button("実行");
chSlt = new Choice();
pl = new Panel();
//演算子の登録
chSlt.add("+");
chSlt.add("−");
chSlt.add("×");
chSlt.add("÷");
//レイアウトの設定
setLayout(null);
pl.setLayout(null);
//座標の設定
txtNum1.setBounds(50, 0, 450, 20);
txtNum2.setBounds(50, 20, 450, 20);
btRun.setBounds (50, 40, 450, 20);
lblAns.setBounds (50, 60, 450, 20);
chSlt.setBounds (10, 40, 40, 20);
pl.setBounds(0, 30 ,500, 100);
//パネルにコントロールを配置
pl.add(txtNum1);
pl.add(txtNum2);
pl.add(btRun);
pl.add(lblAns);
pl.add(chSlt);
add(pl); //パネルをアプレットに配置
btRun.addActionListener(this);
addWindowListener(this);
}
public void windowActivated(WindowEvent e){}
public void windowClosed(WindowEvent e){}
public void windowDeactivated(WindowEvent e){}
public void windowIconified(WindowEvent e){}
public void windowOpened(WindowEvent e){}
public void windowDeiconified(WindowEvent e){}
public void windowClosing(WindowEvent e){
java.lang.System.exit(0);
}
public void actionPerformed(ActionEvent e){
if(e.getSource() == btRun){
try{
BigInteger num1 =
new BigInteger
(txtNum1.getText());
BigInteger num2 =
new BigInteger
(txtNum2.getText());
switch(chSlt.getSelectedIndex()){
case 0:
num1 = num1.add(num2);
break;
case 1:
num1 = num1.subtract(num2);
break;
case 2:
num1 = num1.multiply(num2);
break;
case 3:
num1 = num1.divide(num2);
break;
}
string num = "" + num1;
lblAns.setText(num);
if(num.Length > 64){
lblAns.setText
("表示できません");
}
}
catch(java.lang.Exception err){
lblAns.setText("誤りがあります");
}
}
}
public static void Main(string[] args){
BigIntegerFrame bif =
new BigIntegerFrame();
bif.show();
}
}
|