ICEfacesでプログレスバー

ICEfaces強化週間も今日で終わり。さすがに毎日やると疲れる。もしかすると最近の疲労の原因はこれだったのかも(違


ICEfacesにはプログレスバーコンポーネントがある。せっかくファイルアップロードでアップロード中の状態がわかるようになったのだからこれを使わない手はない!


というわけで、今日はプログレスバーコンポーネントを扱ってみる。


パレットはこれだ。

プログレスバーコンポーネントを貼り付ける前に注意することがある。Visual Web ICEfacesプログレスバーコンポーネントをそのままはりつけるとデザイナがおかしくなるバグがあるのだ!

その回避方法を記す。



そのためにまずpanelGridコンポーネントを貼り付ける。

そしてoutputProgressをデザイナに貼り付ける。いきなりpanelGridの中に貼り付けないのがポイントだ。

そのあとナビゲータでドラッグしてoutputProgressをpanelGridの中に入れる。

これで配置は完成。少し面倒だが、そのうちバグが直るのを期待してまっていよう。NetBeansで標準でプラグインにひっかかるやつだからなんとかしてほしいというか。つーか、woodstockは挙動はdojoつかってるからアレだが、さすがにはりつけただけでバグるとかはなかったからwoodstockから移行を促しているのだから何とかして欲しいものだ。



続いてコードを作成。プログレスバーの値をバインドするプロパティを作成する。

int barValue;

public int getBarValue() {
    return barValue;
}

そしてこのvalueプロパティをプログレスバーvalueプロパティにバインドする。



最後にprogressListenerからこのbarValueを更新してやるように修正。

public void inputFile1_processMyEvent(EventObject eventObject) {
   InputFile file = (InputFile) eventObject.getSource();

   barValue = file.getFileInfo().getPercent();

    try {
        state.render();
    } catch (RenderingException ex) {
        Logger.getLogger(Page3.class.getName()).log(Level.SEVERE, null, ex);
    }
}

実行!


これでアップロードもきもちよくできるようになったぞ!


明日からは小ネタ千夜一夜NetBeans、ゲームといういつもの構成に戻ります。

毎日はさすがに技術系はきついので無理。たぶん。


例えば−の話だが、こういう技術系の同人誌って作ったところで需要はあるのかな。昔は同人誌というと漫画やアニメ系以外がかなりあったんだけど、最近は同人誌=それ系とかエロ系をさすような単語になっちゃったね。なんでだろ。昔はスゲー硬派なのが多かったんだけど。同人ソフトも今はエロ系が多いのかな?