2013年9月28日土曜日

Java Swingデザイナ コンテキストメニュー

やりたいこと
JavaのGUIプログラムで、こんなかんじで、右クリックしてコンテキストメニューを表示させたい。


やりかた
1.準備として、前回の記事に記載したSwingデザイナが必要になりますので、インストールしていない場合は、eclipseに登録してください。

2.Designタブを選択する。

3.Palette -> Menu -> JPopupMenuをクリック

4.コンテキストメニュ-を配置したい場所をクリックし、コンテキストメニューを貼る。

5.Palette -> Menu -> JMenuItem をクリック

6.先ほどはりつけたpopupmenuをクリックし、Itemを追加する。

7.MenuItemに文字を入力する。このプログラムではOpenとした。

8.イベントハンドラの作成
デザイナでOpenを右クリックし -> Add event handler -> action -> action performedを選択。

9.自動生成されるactionperformed()の中にOpenを判断する処理を書いて完成。
public void actionPerformed(ActionEvent arg0) {
    if (arg0.getActionCommand() == "Open"){
        openMenuSelected();
    }
}

2013年9月21日土曜日

メモするソフトJava版

需要はなさそうですが、メモするソフトのJava版を作ってます。

こんな感じ
まずははりぼて(UI)だけ作ってみました。


はりぼて作るだけでも一苦労だったので、手順などをメモしておきます。

Javaで張りぼてのつくり方(準備編)
1.eclipseにSwingDesignerをインストール
このサイトなどを参考にインストールしました。
http://developmentmemo.blog.fc2.com/blog-entry-140.html

※インストール中に問題が発生したので、こちらのサイトを参考に解決。
http://futurismo.biz/archives/1236

※ちなみに、使っているeclipseはADT V21.01です。


Javaで張りぼてのつくり方(本編)
自分の好き勝手な場所にコントロールを貼り付ける方法についての手順になります。

1.eclipseを起動し、File -> New -> Other

2.NewウィンドウでApplication Windowを選択する。

3.New Swing Applicationウィンドウで、名前とかを適当に設定する。
4.ソースが表示されますが、デザインタブに切り替える。

5.そうすると、UIを張り付けられそうな画面が出てきます。

6.ここで、Componetsペインで、getContentPaneを選択し、プロパティペインのLayoutをAbsoluteLayoutに変更する。

※こうしないと、自由にコントロールを張り付けられないみたいなので、こうした。

7.あとは、Visual Studioみたいな感じでコントロールを張り付けていけばよいのですが、 VSのようにD&Dで張り付けるのではなくて、いったん張り付けたいコントロールをクリックして、その後張り付けたいところ クリックすると張り付く仕組みになってます。

8.これで冒頭で紹介した張りぼてができました。
※中身の処理はこれから勉強します。
参考にしたサイト
■Window Builderの使い方
http://t2wonderland.blogspot.jp/2012/01/java-window-builderswinggui.html
http://i.cla.kobe-u.ac.jp/murao/class/2011-SeminarB3B/1/1.pdf