• 【转】经典Java程序源代码(一)


    http://yumengyuyuan.blog.163.com/blog/static/206225022201211131145492/

    1.加法器(该java源文件的名称是Adder.java)

    import java.awt.*;

    import java.awt.event.*;

    import javax.swing.*;

    public class Adder implements ActionListener

    {

           JFrame AdderFrame;

           JTextField TOprand1;

           JTextField TOprand2;

           JLabel LAdd,LSum;

           JButton BAdd,BClear;

           JPanel JP1,JP2;

           public Adder()

           {

                  AdderFrame=new JFrame("AdderFrame");

                  TOprand1=new JTextField("0.0");

                  TOprand2=new JTextField("0.0");

                  LAdd=new JLabel("+");

                  LSum=new JLabel("=   ");

                  BAdd=new JButton("Add");

                  BClear=new JButton("Clear");

                  JP1=new JPanel();

                  JP2=new JPanel();

                  BAdd.addActionListener(this);

                  BClear.addActionListener(new ActionListener()

                  {

                         public void actionPerformed(ActionEvent event)

                         {

                                TOprand1.setText("0.0");

                                TOprand2.setText("0.0");

                                LSum.setText("=");      

                         }

                  });

                  AdderFrame.add(JP1);

                  JP1.add(TOprand1);

                  JP1.add(LAdd);

                  JP1.add(TOprand2);

                  JP1.add(LSum);

                 

                 

                  AdderFrame.add(JP2);

                  JP2.add(BAdd);

                  JP2.add(BClear);

                  AdderFrame.getContentPane().setLayout(new BorderLayout());

                  AdderFrame.getContentPane().add(JP1,BorderLayout.NORTH);

                  AdderFrame.getContentPane().add(JP2,BorderLayout.SOUTH);

                 

                  AdderFrame.addWindowListener(new WindowAdapter()

                  {

                         public void windowClosing(WindowEvent event)

                         {

                                System.exit(0);

                         }

                  });

                  AdderFrame.pack();

                  AdderFrame.setVisible(true);

                  AdderFrame.setResizable(false);

                  AdderFrame.setSize(250,100);

           }

           public void actionPerformed(ActionEvent event)

           {

                        

                  double sum=(double)(Double.valueOf(TOprand1.getText()).doubleValue()+Double.valueOf(TOprand2.getText()).doubleValue());

                  LSum.setText("="+sum);

           }

          

           public static void main(String[] args)

           {

                  Adder adder=new Adder();

           }

    }

    2.小型记事本(该java源文件由两个类构成,名称为Notepad.java)

    import java.awt.*;

    import java.awt.event.*;

    import javax.swing.*;

    import java.io.*;

    class mynotepad extends JFrame

    {

        File file=null;

         Color color=Color.red;

         mynotepad()

         {

               initTextContent();

                initMenu();

                initAboutDialog();

         }

        

         void initTextContent()

         {

                getContentPane().add(new JScrollPane(content));

         }

       

        JTextPane content=new JTextPane();

        JFileChooser openfile=new JFileChooser();

        JColorChooser opencolor=new JColorChooser();

        JDialog about=new JDialog(this);

        JMenuBar menu=new JMenuBar();

         //菜单栏的各个菜单项

           JMenu[] menus=new JMenu[]{new JMenu("文件"),new JMenu("编辑"),new JMenu("关于")};

       

        //"文件"菜单项的四个下拉菜单

        //编辑菜单的四个下拉菜单

       

           JMenuItem optionofmenu[][]=new JMenuItem[][]{{new JMenuItem("新建"),new JMenuItem("打开"),new JMenuItem("保存"),new JMenuItem("退出")},

                                                                      {new JMenuItem("复制"),new JMenuItem("剪切"),new JMenuItem("粘贴"),new JMenuItem("颜色")},

                                                                                   {new JMenuItem("关于")}

                                                                                    };

         void initMenu()

        {

              for(int i=0;i<menus.length;i++)

              {

                    menu.add(menus[i]);

                    for(int j=0;j<optionofmenu[i].length;j++)

                    {

                           menus[i].add(optionofmenu[i][j]);

                           optionofmenu[i][j].addActionListener( action );

                    }

              }

              this.setJMenuBar(menu);

        }

       

        ActionListener action=new ActionListener()

        {                   //添加事件监听

               public void actionPerformed(ActionEvent e)

               {

                     String name = e.getActionCommand();

                         JMenuItem MI=(JMenuItem)e.getSource();

                         if("新建".equals(name))

                         {

                                content.setText("");

                                file=null;

                         }

                         else if("打开".equals(name))

                         {

                       if(file !=null)

                              openfile.setSelectedFile(file);

                    int returnVal=openfile.showOpenDialog(mynotepad.this);

                    if(returnVal==JFileChooser.APPROVE_OPTION)

                    {

                                       file=openfile.getSelectedFile();

                        unfold();

                    }

                     }

                     else if("保存".equals(name))

                     {

                            if(file!=null) openfile.setSelectedFile(file);

                         int returnVal=openfile.showSaveDialog(mynotepad.this);

                    if(returnVal==JFileChooser.APPROVE_OPTION)

                    {

                           file=openfile.getSelectedFile();

                          saving();

                    }

              

                }

                else if("退出".equals(name))

                {

                       mynotepad f=new mynotepad();

                       int s=JOptionPane.showConfirmDialog(f,"退出?","退出",JOptionPane.YES_NO_OPTION);

                    if(s==JOptionPane.YES_OPTION)

                    System.exit(0);

                }

                else if("剪切".equals(name))

                {

                       content.cut();

                }

                else if("复制".equals(name))

                {

                       content.copy();

                }

                else if("粘贴".equals(name))

                {

                       content.paste();

                }

                else if("颜色".equals(name))

                {

                       color=JColorChooser.showDialog(mynotepad.this,"",color);

                    content.setForeground(color);

                    

                      }

                      else if("关于".equals(name))

                      {

                  about.setSize(300,150);

                  about.show();

                     }

       

                }

          };

         

          void saving()

          {

               try

               {

                   FileWriter Writef=new FileWriter(file);

                   Writef.write(content.getText());

                   Writef.close();

            }

               catch(Exception e)

               {

                      e.printStackTrace();

               }

        }               

         

          void unfold()

          {

               try

               {

                   FileReader Readf=new FileReader(file);

                  int len=(int)file.length();

                 char []buffer=new char[len];

                  Readf.read(buffer,0,len);

                Readf.close();

                content.setText(new String(buffer));

            }

            catch(Exception e)

            {

                   e.printStackTrace();

            }

           }

          void initAboutDialog()

          {

              about.setLayout(new GridLayout(3,1));

              about.getContentPane().setBackground(Color.white);

              about.getContentPane().add(new JLabel("我的记事本程序"));//对话框内容

              about.getContentPane().add(new JLabel("制作者:Fwx"));

              about.getContentPane().add(new JLabel("2007年12月"));

              about.setModal(true);                        //设置对话框前端显示

              about.setSize(100,100);                       

              about.setLocation(250,170);                  //设置对话框显示位置

        };

    }  

    public class Notepad

    {

           public static void main(String args[])

           {                          //入口main函数

                  mynotepad noted=new mynotepad();

            noted.addWindowListener(new WindowAdapter()

            {

           

            });

            noted.setTitle("我的记事本程序");           //记事本标题

                  noted.setSize(640,320);                  //设置记事本大小

                  noted.show();                        

                  noted.setLocation(150,100);              //设置记事本显示位置

           }

    }

  • 相关阅读:
    maven 依赖阿里云仓库
    jacob
    mysql
    简单明了区分escape、encodeURI和encodeURIComponent(转载)
    eclipse
    StringBuffer的构造方法和capacity的返回值关系
    toString和valueOf的区别
    js中ajax返回数据
    springmvc 文件上传
    springmvc 上传文件报错 String不能转成multipartFile
  • 原文地址:https://www.cnblogs.com/royalisme/p/4786236.html
Copyright © 2020-2023  润新知