円からドルへ、フィートからセンチメートルへ、華氏温度から摂氏温度へと世の中には単位の換算などで同じ計算を繰り返すことが多くあります。前回のCatText.javaに変更を加えてこのようなツールを作ります。

フィート(ft)からメートル(m)に単位を換算するツールを作ります。双方向で使えます。上部にフィートを入力して、[↓]ボタンを押すと下部にメートルがでます。逆に下部にメートルを入力して[↑]を押すと上部にフィートがでます。
フィート(ft)からメートル(m)へ変換するには0.3048をかけ,メートルからフィートへは0.3048で割ります。
基本的にCatText.java,CatText2.javaを少し変えるだけです。
使っている部品は,次の5つです。
| JTextField | ||
|---|---|---|
| JButton | JLabel | JButton |
| JTextField | ||
一点だけ新しいことを使っています。

これはJTextFieldにタイトル入りの枠線をつけたものです。たとえばmytext1をJTextFieldのインスタンスとして,次のように書きます。
mytext1.setBorder(BorderFactory.createTitledBorder("フィート"));
mytext1.setBorder(BorderFactory.createTitledBorder("フィート"));
2めはもちろんメートルにします。mytext1.setHorizontalAlignment(JTextField.RIGHT);
setLayout(new BorderLayout());
add(mytext1,BorderLayout.NORTH);選択肢は NORTH WEST CENTER EAST SOUTH のどれかです。
if (e.getSource() == mybutton1) {
double x;
x = Double.parseDouble(mytext1.getText());
mytext2.setText( Double.toString( x * 0.3048 ) );
}
else if (e.getSource() == mybutton2) {
ではじめ、mytext1,mytext2を書き換えて、かけ算を割り算にします。動くかどうか確認します。
インチ(in)からセンチメートル(cm)へ変換 インチ(in)からセンチメートル(cm)へ変換するには2.54を乗算すればよい。
華氏(F)から摂氏(℃)へ変換。換算式は次の通り。
(華氏温度) = 1.8 * (摂氏温度) + 32
華氏温度は日本では全く使われないのですが、アメリカでは一般的な温度の単位で、日常会話で体温や気温を言うときにはこれを使います。旅行する人は知っておくとよいでしょう。Fで表します。(正しくは℃とおなじく°がつきます)、
もともとドイツのファーレンハイトという人が考えた単位で、氷に塩を混ぜて作られる0℃以下の低温を0F、人間の体温を100Fとしたのが始まりです。