[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[jfriends-ml 10526] Re: そろそろ日本 語でコーディングしても ...



TAKAHASHI Toru wrote:
> 
> 高橋(徹)です。
> 
>    "muimi admin <mui@xxxxxxxxx>"さんは書きました:
> 
> > #set/get日本語はちょっとかっこわるい。
> >  (でもset/getじゃないとJavaBean命名規則を使うツールを使えない)
> Beansをちゃんとサポートしているなら、BeanInfoオブジェクトに
> 定義したプロパティ名とアクセッサメソッド名を読むはずなので、
> set/getでなくてもよいはずです。
> # BeanInfoを提供しない場合に自動解析を行うときの規約です。
> 
> ---
> Toru TAKAHASHI

  高橋(智)です。
  ということで、IDEを使って都道府県Beanを作ってみました。
 
     都道府県1.にセットする人口は(30);  // <--- わかり易い!!


[都道府県JavaBean]
-----------------------------------------------------------------------
package untitled1;

public class 都道府県 {
  private int 人口;
  public int の人口は() {
    return 人口;
  }
  public void にセットする人口は(int 人口) {
    this.人口 = 人口;
  }
}
-----------------------------------------------------------------------

[IDEが生成した 都道府県BeanInfo を手直ししたもの]
-----------------------------------------------------------------------
package untitled1;

import java.beans.*;

public class 都道府県BeanInfo extends SimpleBeanInfo {
  Class beanClass = 都道府県.class;
  String iconColor16x16Filename;
  String iconColor32x32Filename;
  String iconMono16x16Filename;
  String iconMono32x32Filename;

  public 都道府県BeanInfo() {
  }
  public PropertyDescriptor[] getPropertyDescriptors() {
    try {
      PropertyDescriptor _人口 = new PropertyDescriptor("人口", beanClass,
                                           "の人口は", "にセットする人口は");
      _人口.setDisplayName("人口");
      _人口.setShortDescription("都道府県の人口です");
      PropertyDescriptor[] pds = new PropertyDescriptor[] {
        _人口};
      return pds;
    }
    catch(IntrospectionException ex) {
      ex.printStackTrace();
      return null;
    }
  }
  public java.awt.Image getIcon(int iconKind) {
    switch (iconKind) {
      case BeanInfo.ICON_COLOR_16x16:
        return iconColor16x16Filename != null ? loadImage(iconColor16x16Filename) : null;
      case BeanInfo.ICON_COLOR_32x32:
        return iconColor32x32Filename != null ? loadImage(iconColor32x32Filename) : null;
      case BeanInfo.ICON_MONO_16x16:
        return iconMono16x16Filename != null ? loadImage(iconMono16x16Filename) : null;
      case BeanInfo.ICON_MONO_32x32:
        return iconMono32x32Filename != null ? loadImage(iconMono32x32Filename) : null;
    }
    return null;
  }
}
-----------------------------------------------------------------------

[IDE(JBuilder)を使ってD&Dして人口プロパティを設定したコード]
-----------------------------------------------------------------------
package untitled1;

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

public class Frame1 extends JFrame {
  JPanel contentPane;
  都道府県 都道府県1 = new 都道府県();

  //フレームのビルド
  public Frame1() {
    enableEvents(AWTEvent.WINDOW_EVENT_MASK);
    try {
      jbInit();
    }
    catch(Exception e) {
      e.printStackTrace();
    }
  }
  //コンポーネントの初期化
  private void jbInit() throws Exception  {
    contentPane = (JPanel) this.getContentPane();
    ...
    都道府県1.にセットする人口は(30);
    ...
  }
}
-----------------------------------------------------------------------

-- 
高橋智宏
  Java読書会( http://www.t3-jpn.com/bof/ )
  T3-Japan( http://www.t3-jpn.com/ )