隨筆 - 154  文章 - 60  trackbacks - 0
          <2007年11月>
          28293031123
          45678910
          11121314151617
          18192021222324
          2526272829301
          2345678

          聲明:

          該blog是為了收集資料,認識朋友,學習、提高技術,所以本blog的內容除非聲明,否則一律為轉載!!

          感謝那些公開自己技術成果的高人們!?。?/p> 支持開源,尊重他人的勞動!!

          常用鏈接

          留言簿(3)

          隨筆分類(148)

          隨筆檔案(143)

          收藏夾(2)

          其他

          學習(技術)

          觀察思考(非技術)

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          代碼:
          package myprojects.jmemorydemo;
          import javax.swing.UIManager;
          import java.awt.*;
          public class JMemoryDemo {
          private boolean packFrame = false;
          public JMemoryDemo() {
          MainFrame frame 
          = new MainFrame();
          if (packFrame) {
          frame.pack();
          }

          else {
          frame.validate();
          }

          Dimension screenSize 
          = Toolkit.getDefaultToolkit().getScreenSize();
          Dimension frameSize 
          = frame.getSize();
          if (frameSize.height > screenSize.height) {
          frameSize.height 
          = screenSize.height;
          }

          if (frameSize.width > screenSize.width) {
          frameSize.width 
          = screenSize.width;
          }

          frame.setLocation((screenSize.width 
          - frameSize.width) / 2, (screenSize.height - frameSize.height)
          / 2);
          frame.setVisible(
          true);
          }

          public static void main(String[] args)
          {
          new JMemoryDemo();
          }

          }

          ===================================================
          package myprojects.jmemorydemo;
          import javax.swing.*;
          public class ProgressThread extends Thread {
          JProgressBar pbar;
          JLabel label;
          public ProgressThread(JProgressBar pbar,JLabel label) {
          this.pbar=pbar;
          this.label=label;
          }

          public void run() {
          int min=0;
          int max=100;
          int free=0;
          int totle=0;
          int status=0;
          pbar.setMinimum(min);
          pbar.setMaximum(max);
          pbar.setValue(status);
          while(true){
          try{
          totle
          =(int)(Runtime.getRuntime().totalMemory()/1024);
          free
          =(int)(Runtime.getRuntime().freeMemory()/1024);
          }
          catch(Exception e){
          e.printStackTrace();
          }

          label.setText(
          "Free Memory :"+(int)(Runtime.getRuntime().freeMemory()/1024)+"K"+" Totle Memory Allo
          cated :"
          +(int)(Runtime.getRuntime().totalMemory()/1024)+"K");
          status
          =(int)(free*100/totle);
          pbar.setValue(status);
          pbar.setString(
          "Free Momery "+ status+"%");
          try{
          this.sleep(1000);
          }
          catch(InterruptedException err){}
          }

          }

          }

          ===============================================
          package myprojects.jmemorydemo;
          import java.awt.*;
          import java.awt.event.*;
          import javax.swing.*;
          public class MainFrame extends JFrame {
          private JPanel contentPane;
          private BorderLayout borderLayout1 = new BorderLayout();
          private JProgressBar jProgressBar1 = new JProgressBar();
          private JLabel jLabel1 = new JLabel();
          private JLabel jLabel2 = new JLabel();
          public MainFrame() {
          enableEvents(AWTEvent.WINDOW_EVENT_MASK);
          try {
          jbInit();
          }

          catch(Exception e) {
          e.printStackTrace();
          }

          }

          private void jbInit() throws Exception {
          (MainFrame.
          class.getResource("[Your Icon]")));
          contentPane 
          = (JPanel) this.getContentPane();
          contentPane.setLayout(borderLayout1);
          this.setSize(new Dimension(304215));
          this.setTitle("JMemoryDemo");
          jLabel1.setFont(
          new java.awt.Font("Dialog"014));
          jLabel1.setHorizontalAlignment(SwingConstants.CENTER);
          jLabel1.setText(
          "Memory Monitor");
          jProgressBar1.setOrientation(JProgressBar.VERTICAL);
          jProgressBar1.setFont(
          new java.awt.Font("Dialog"014));
          jProgressBar1.setToolTipText(
          "");
          jProgressBar1.setStringPainted(
          true);
          jLabel2.setFont(
          new java.awt.Font("Dialog"014));
          jLabel2.setText(
          "");
          contentPane.add(jProgressBar1, BorderLayout.CENTER);
          contentPane.add(jLabel1, BorderLayout.NORTH);
          contentPane.add(jLabel2, BorderLayout.SOUTH);
          ProgressThread pThread 
          = new ProgressThread(this.jProgressBar1,this.jLabel2);
          pThread.start();
          }

          protected void processWindowEvent(WindowEvent e) {
          super.processWindowEvent(e);
          if (e.getID() == WindowEvent.WINDOW_CLOSING) {
          System.exit(
          0);
          }

          }

          }



           問題的關鍵:

            totle=(int)(Runtime.getRuntime().totalMemory()/1024);

            free=(int)(Runtime.getRuntime().freeMemory()/1024);

          posted on 2007-11-07 09:57 lk 閱讀(376) 評論(0)  編輯  收藏 所屬分類: j2se
          主站蜘蛛池模板: 甘泉县| 曲周县| 屯昌县| 霍山县| 尼勒克县| 长阳| 肇东市| 蒙自县| 云和县| 平南县| 西和县| 蒙城县| 诸暨市| 防城港市| 吴旗县| 墨玉县| 屏边| 呼和浩特市| 巴中市| 浦县| 大庆市| 杨浦区| 勃利县| 阿瓦提县| 巴中市| 郎溪县| 商南县| 玉林市| 深泽县| 县级市| 上饶县| 个旧市| 孙吴县| 白城市| 焦作市| 宾川县| 竹北市| 南投市| 辽阳县| 克什克腾旗| 平塘县|