プログレスバーを使用してみる。
1.追加ソース
/** * Initialize the contents of the frame. */ private void initialize() { frame = new JFrame(); frame.setBounds(100, 100, 450, 300); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.getContentPane().setLayout(new BorderLayout(0, 0)); JButton btnNewButton = new JButton("開始"); frame.getContentPane().add(btnNewButton, BorderLayout.SOUTH); progressBar = new JProgressBar(0 , 100); frame.getContentPane().add(progressBar, BorderLayout.NORTH); btnNewButton.addActionListener(this); timer = new Timer(100 , this); timer.start(); } /** * 汎用String格納用メンバ変数 * メモリ効率を考えてStringBuilderを使用する。 * */ StringBuilder mStringBuilder = new StringBuilder(); /* (非 Javadoc) * @see java.awt.event.ActionListener#actionPerformed(java.awt.event.ActionEvent) */ public void actionPerformed(ActionEvent e) { if(mStringBuilder !=null){ mStringBuilder.delete(0, mStringBuilder.length()); } mStringBuilder.append(e.getActionCommand()); //開始のボタンイベントかどうか if(mStringBuilder.toString().equals("開始")){ //警告ダイアログを表示する。 JLabel label = new JLabel("Message"); label.setForeground(Color.RED); JOptionPane.showMessageDialog(frame, label); }else{ //ActionEventがクリックボタンではない場合,プログレスバーの値変更処理開始 int value = progressBar.getValue(); if (value == 100) { timer.stop(); return; }else{ progressBar.setValue(value + 1); } } }
2.プログレスバーが表示された。
プログレスダイアログが表示された。 |
3.プロジェクトについて
ここのサイトに格納しております。何かのお役に立てたら幸いです。