可能性のある複製:
JProgressBarのかなりの代替ですか?
ロードに数秒かかるプロセスがあり、ロードが完了するまでJava Swingでアニメーションを作成したいと思います。
典型的なProgressBarの使用を避け、このような素敵でモダンな無限の進行状況を使用したい
私は同様の質問を知っていますが、これは厳密にJava Swing関連です。このためのライブラリまたは例はありますか?
この種の活動にはガラス板の使用をお勧めします。必要な手順は次のとおりです。
JComponent
をBorderLayout
で作成します。 JLabel
をCENTER
に追加します。これには、選択したアニメーション.gifアイコンが含まれます。Paint(Graphics)
メソッドをオーバーライドして、GUIをグレー表示(または白表示)にします。これを実現するには、コンポーネントのサイズの塗りつぶされた四角形を描画し、四角形を半透明の色で塗りつぶす必要があります。このタスクには ImageIcon
を使用するだけで、gifを自動的にアニメーション化します。以下のコードは、このスクリーンショット(the ajax-loader.gif
は http://www.ajaxload.info/)からダウンロードされました:
public static void main(String[] args) throws Exception {
JFrame frame = new JFrame("Test");
ImageIcon loading = new ImageIcon("ajax-loader.gif");
frame.add(new JLabel("loading... ", loading, JLabel.CENTER));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(400, 300);
frame.setVisible(true);
}
もちろん可能です。ツール AjaxLoad を使用して、任意のimage/htmlコンテナーで使用できるアニメーション画像を生成できます。