next up previous contents
Next: NotVisible サンプル Up: Beans 作成サンプル Previous: MyButtonサンプル

MultiBeans サンプル

それでは、java.awtの主要なcomponentを、まとめてbeansにしてみましょう。 まず、次のようなスクリプトでjavaのソースを生成します。先のMyButtonと同じく、 java.awtのクラスをそのまま使っています。

#!/bin/sh
 for name in Button Canvas Checkbox Choice Label List ScrollPane TextArea TextField
  do 
    echo "public class My${name} extends java.awt.${name} {}" > My${name}.java
  done

こうして出来たソースを、javac *.java でコンパイルします。

後は、manifestファイルを作って、JARファイルをつくるだけですが、これも 面倒なので次のようなスクリプトを作りました。

#!/bin/sh

 MANIFEST=manifest.tmp
 COMMAND=jar.sh

 echo -n "jar cvfm MultiBeans.jar $MANIFEST " > $COMMAND

 for name in Button Canvas Checkbox Choice Label List ScrollPane TextArea TextField
  do 
    echo "Name: My${name}.class" >> $MANIFEST
    echo "Java-Bean: True"       >> $MANIFEST
    echo ""                      >> $MANIFEST
    echo -n "My${name}.class "   >> $COMMAND
  done

このスクリプトで、次のようなmanifestファイルが生成されます。

manifestファイル
==================================================================
Name: MyButton.class
Java-Bean: True

Name: MyCanvas.class
Java-Bean: True

Name: MyCheckbox.class
Java-Bean: True

Name: MyChoice.class
Java-Bean: True

Name: MyLabel.class
Java-Bean: True

Name: MyList.class
Java-Bean: True

Name: MyScrollPane.class
Java-Bean: True

Name: MyTextArea.class
Java-Bean: True

Name: MyTextField.class
Java-Bean: True

==================================================================

こうして、manifestファイルで指定すれば、一つのJARファイルに複数のbeansを 詰め込むことが出来ます。



maruyama@wakhok.ac.jp