Hatena::ブログ(Diary)

てんぷらメモ@はてな

2006-05-02

[]Java Swing Hacks を読む

Java Swing Hacksが連休中に届きました。

コンセプトなどがJava Swing Tips - てんぷらメモと似ているので、非常に参考になります(被っているHacksも多数有り)。

サンプルソースも上記のサイトからまとめてダウンロードできるので、勉強のついでに重箱の隅*1を突付いてみようと思います。

以下、全体的な感想です。

  • おすすめの理由
    • 各Hackはそれぞれ独立していて、最初から読んでいく必要はありません。ある程度Swingに慣れていれば、目次をざっと眺めておもしろそうなHackを探す、サンプルプログラムを実行して遊ぶ、解説を読むといった流れで楽しめると思います。
    • JDKなどのデモ(SwingSet2.jarやJava2Demo.jar)だと、ひとつの巨大なサンプルになっているので、知りたい機能に対応するソースコードを探しだすのに結構コツがいるのですが*2、この本ではひとつのHackにひとつのコンパクトなサンプルコードが付いています。ソースも短くシンプルに読みやすくまとめられています。
  • てんぷらメモでも見習いたい点
    • サンプルコードだけでなく解説も詳しくて充実しています。
    • きちんと章立てされています。コンポーネントで分類するより分かりやすい感じがします。
    • サンプルコードの使用許諾についての記述があります。このライセンス形態?はマネしたいです。
  • 本全体での重箱の隅
    • 一々コンパイルするのが面倒なので、欲を言えばダブルクリックで起動するjarファイルも添付しておいてもらいたいところです。
    • サンプルを起動すると、タイトルバーのタイトルが見切れてるものが多いような気がします。
    • フレームは画面中央で開くようにして欲しいかも。左上隅までマウスカーソルを移動するのはちょっと手間です。
    • setDefaultCloseOperation(EXIT_ON_CLOSE)しているサンプルとしていないサンプルが混在しています。Ctrl-cなどでコンソールを閉じるのは面倒です。

*1:大部分がどうでもいいようなことの意味で

*2:SwingSet2.jarのソースコードビュアーは文字サイズが小さすぎてちょっとめまいが…、あと自分の好きなエディタで読みたいし…

JavaSwingJavaSwing 2007/04/29 20:11 JavaSwingで動作するFTPクライアントとか存在したらイイなと思います

ateraiaterai 2007/05/19 02:11 見落としてましたorz。それはそれとして、SwingでFTPというと、[http://j-ftp.sourceforge.net/:title=JFtp - Open Source FTP, SFTP, NFS and SMB file transfer client and more]あたりが有名かも。

ravarava 2009/01/31 16:20 はじめまして、私もJavaSwingHackを読みました。
トランジションの実装を解析してJPanelに置き換えてみたのですが
トランジション描写前に遷移先のJPanelが先に描写してしまうんですね。
これをうまく回避出来ないかと考えていますが、なかなか難しい・・・。
JavaFXだとトランジションはうまく表現出来るみたいですね。

ravarava 2009/02/01 02:12 初回表示時のみJFrame#paint(Graphics)をCallしないようにオーバーライドしたら出来ました。
う〜ん、コテコテな記述で悩ましい・・・。
JavaSwingHacksも同様の現象が出ていたんでどう対処したらいいものかと悩みました。

ateraiaterai 2009/02/02 19:20 はじめまして。SwingHacksのトランジションというと、hack_39の「フレームをディゾルブさせる」でしたっけ?、・・・よく覚えてないです(^^;。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/aterai/20060502/p1