|
import java.awt.*;
import java.awt.event.*;
public class GUIaa extends Frame { // Frameクラスの継承
// インスタンス変数としてボタン、表示欄、入力欄を生成・初期化
Button b0 = new Button("Even/Odd?");
Label x0 = new Label("Type a number and press...");
TextField t0 = new TextField();
public GUIaa() {
setLayout(null); // 部品の自動配置機能をoffにする
add(t0); t0.setBounds(10, 40, 90, 30); // 入力欄の貼り付け(左上隅のx/y座標、幅、高さ)
add(b0); b0.setBounds(110, 40, 80, 30); // ボタンの貼り付け
add(x0); x0.setBounds(10, 80, 180, 30); // ボタンの貼り付け
b0.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
int i = (new Integer(t0.getText())).intValue();
t0.setText("");
if(i % 2 == 0) {
x0.setText(i + " is Even");
} else {
x0.setText(i + " is Odd");
}
}
});
}
public static void main(String[] args) {
Frame win = new GUIaa();
win.setSize(200, 150); // ウィンドウの大きさを設定
win.setVisible(true); // ディスプレイへ表示
win.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});
}
}
|
|
import java.awt.*;
import java.awt.event.*;
public class CFchanger extends Frame{
Button b0 = new Button("摂氏に変換");
Button b1 = new Button("華氏に変換");
static Label x1 = new Label("何か数字を入れて下さい");
Label x0 = new Label("");
TextField t0 = new TextField();
public CFchanger(){
setLayout(null);
add(x1); x1.setBounds(10,50,180,30);
add(t0); t0.setBounds(10,80,90,30);
add(x0); x0.setBounds(10,120,250,30);
add(b0); b0.setBounds(100,85,100,30);
add(b1); b1.setBounds(200,85,100,30);
b0.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
double temp = 0;
try{
double i = new Double(t0.getText()).doubleValue();
temp = (i-32)/1.8;
if(-273.15 > temp){
throw new Nainai();
}
else{
x0.setText("摂氏にすると " + temp);
}
}
catch (Nainai nai) {
x0.setText("絶対温度-273.15以下はありません");
}
catch (NumberFormatException e) {
x0.setText("数字を入力して下さい");
}
catch (Exception e){
x0.setText("エラーが発生しました。");
}
}
});
b1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent evt){
double temp = 0;
try{
double i = new Double(t0.getText()).doubleValue();
temp = 1.8*i+32;
if(temp < -459.67){
throw new Nainai();
}
else{
x0.setText("華氏にすると " + temp);
}
}
catch (Nainai nai) {
x0.setText("絶対温度-459.67以下はありません");
}
catch (NumberFormatException e) {
x0.setText("数字を入力して下さい。");
}
catch (Exception e){
x0.setText("エラーが発生しました。");
}
}
});
}
class Nainai extends Exception {
public Nainai() {
super();
}
}
public static void main(String[] args){
Frame win = new CFchanger();
win.setSize(300,250);
win.setVisible(true);
win.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent evt){
System.exit(0);
}
});
}
}
|
|
import java.awt.*;
import java.awt.event.*;
public class Keisanki extends Frame{
Button b0 = new Button("0");
Button b00 = new Button("00");
Button b1 = new Button("1");
Button b2 = new Button("2");
Button b3 = new Button("3");
Button b4 = new Button("4");
Button b5 = new Button("5");
Button b6 = new Button("6");
Button b7 = new Button("7");
Button b8 = new Button("8");
Button b9 = new Button("9");
Button bsum = new Button("+");
Button bsub = new Button("−");
Button bmul = new Button("×");
Button bdiv = new Button("÷");
Button bwa = new Button("=");
Button bc = new Button("C");
Label disp = new Label("",Label.RIGHT);
int num1 = 0;
int num2 = 0;
int hinban = 0;
public Keisanki(){
setLayout(null);
add(b0); b0.setBounds(60,110,40,30);
add(b00); b00.setBounds(100,110,40,30);
add(b1); b1.setBounds(60,50,40,30);
add(b2); b2.setBounds(100,50,40,30);
add(b3); b3.setBounds(140,50,40,30);
add(b4); b4.setBounds(60,70,40,30);
add(b5); b5.setBounds(100,70,40,30);
add(b6); b6.setBounds(140,70,40,30);
add(b7); b7.setBounds(60,90,40,30);
add(b8); b8.setBounds(100,90,40,30);
add(b9); b9.setBounds(140,90,40,30);
add(bsum); bsum.setBounds(180,50,40,30);
add(bsub); bsub.setBounds(180,70,40,30);
add(bmul); bmul.setBounds(180,90,40,30);
add(bdiv); bdiv.setBounds(180,110,40,30);
add(bwa); bwa.setBounds(140,110,40,30);
add(bc); bc.setBounds(20,110,40,30);
add(disp); disp.setBounds(25,25,150,30);
disp.setFont(new Font("null",Font.PLAIN,20));
disp.setBackground(Color.white);
// disp.setFont(white);
b0.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10;
disp.setText(""+num1);
}
});
b00.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*100;
disp.setText(""+num1);
}
});
b1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+1;
disp.setText(""+num1);
}
});
b2.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+2;
disp.setText(""+num1);
}
});
b3.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+3;
disp.setText(""+num1);
}
});
b4.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+4;
disp.setText(""+num1);
}
});
b5.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+5;
disp.setText(""+num1);
}
});
b6.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+6;
disp.setText(""+num1);
}
});
b7.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+7;
disp.setText(""+num1);
}
});
b8.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+8;
disp.setText(""+num1);
}
});
b9.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = num1*10+9;
disp.setText(""+num1);
}
});
bsum.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if(hinban == 0){
num2 = num1;
disp.setText(""+num2);
num1 = 0;
hinban = 1;
}
else{
num2 = num2 + num1;
disp.setText(""+num2);
num1 = 0;
hinban = 1;
}
}
});
bsub.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if(hinban == 0){
num2 = num1;
disp.setText(""+num2);
num1 = 0;
hinban = 2;
}
else{
num2 = num2 - num1;
disp.setText(""+num2);
num1 = 0;
hinban = 2;
}
}
});
bmul.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if(hinban == 0){
num2 = num1;
disp.setText(""+num2);
num1 = 0;
hinban = 3;
}
else{
num2 = num2 * num1;
disp.setText(""+num2);
num1 = 0;
hinban = 3;
}
}
});
bdiv.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if(hinban == 4 && num1 == 0){
disp.setText("E");
}
if(hinban == 0){
num2 = num1;
disp.setText(""+num2);
num1 = 0;
hinban = 4;
}
else{
num2 = num2 / num1;
disp.setText(""+num2);
num1 = 0;
hinban = 4;
}
}
});
bwa.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
if(hinban == 1) {num2 = num2 + num1;}
if(hinban == 2) {num2 = num2 - num1;}
if(hinban == 3) {num2 = num2 * num1;}
if(hinban == 4) {num2 = num2 / num1;}
if(hinban == 4 && num1 == 0){
disp.setText("E");
}
disp.setText(""+num2);
num1 = 0;
}
});
bc.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
num1 = 0;
num2 = 0;
hinban = 0;
disp.setText(""+num2);
}
});
class Erro extends Exception {
public Erro() {
super();
}
}
}
public static void main(String[] args) {
Frame win = new Keisanki(); // Windowの生成
win.setSize(220,140); // winの大きさを幅200,高さ150にする
win.setVisible(true); // winの表示
win.setBackground(Color.black);
// windowが閉じたらアプリケーションを終了させる。
win.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent evt) {
System.exit(0);
}
});
}
}
|