⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mainframe.java

📁 用JAVA做的电话本小程序
💻 JAVA
字号:
package phonebook2;import java.awt.event.ActionEvent;import java.awt.event.MouseEvent;import javax.swing.*;import java.awt.*;import java.awt.event.ActionListener;import javax.swing.JOptionPane;public class MainFrame extends JFrame{    JPanel panel1=new JPanel(new GridLayout(8,1),true);    PHbook phonebook=new PHbook();    JLabel label1=new JLabel("ID | 姓名 | 电话 | 学校/年龄 |类型");    JLabel[] labelgroup=new JLabel[5];    JMenuBar menubar=new JMenuBar();    JMenu menu_add=new JMenu("添加");    JMenu menu_phonebook=new JMenu("电话本");    JMenuItem itemadd_ter=new JMenuItem("教师");    JMenuItem itemadd_stu=new JMenuItem("学生");    JMenuItem itemadd_scan=new JMenuItem("浏览");    JMenuItem itemadd_quit=new JMenuItem("退出");    JMenuItem item_find=new JMenuItem("查找");    JButton nextbutton=new JButton("下一页");    JButton prevbutton=new JButton("上一页");    int index=0;    boolean scan=true;    PropertyBox property=new  PropertyBox(this);        public MainFrame(){        super("电话本 2");        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);        this.setSize(300, 300);        panel1.setPreferredSize(new Dimension(300,300));        menu_add.add(itemadd_ter);        menu_add.add(itemadd_stu);        menu_phonebook.add(itemadd_scan);        menu_phonebook.add(itemadd_quit);        menu_phonebook.add(item_find);        menubar.add(menu_phonebook);        menubar.add(menu_add);        panel1.add(label1);        initlabels();        setMenuitem();        setButton();        setLabel();        this.setJMenuBar(menubar);        panel1.setVisible(true);                     getContentPane().add(panel1);        panel1.add(prevbutton);        panel1.add(nextbutton);        showItems();        scan=true;    } void setMenuitem(){     itemadd_quit.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {               System.exit(0);            }     });      itemadd_ter.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {              String name,phone,school;                           name=JOptionPane.showInputDialog(null, "请输入教师名字", null);              phone=JOptionPane.showInputDialog(null, "请输入教师电话", null);              school=JOptionPane.showInputDialog(null, "请输入教师学校", null);                              if(name==null)              {                 return;              }              if(phone==null)              {                  return;              }              if(school==null)              {                  return;              }              PHbookItem temp=new Teacher(name,phone,school);              phonebook.addItem(temp);               showItems();            }        });        itemadd_stu.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {              String name,phone,age;              name=JOptionPane.showInputDialog(null, "请输入学生名字", null);              phone=JOptionPane.showInputDialog(null, "请输入学生电话", null);              age=JOptionPane.showInputDialog(null, "请输入学生年龄", null);                         if(name==null)              {                  return;              }              if(phone==null)              {                 return;              }              if(age==null)              {                return;              }              PHbookItem temp=new Student(name,phone,age);              phonebook.addItem(temp);              showItems();            }        });       item_find.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {                String name;                name=JOptionPane.showInputDialog(null, "请输入要查找的名字:", null);                if(name==null)                {                    return;                }                                else{                    if(phonebook.Find(name, 1).pbook.size()==0)                        JOptionPane.showConfirmDialog(null, "没有找到条目", "查找", 2);                    showresult(phonebook.Find(name, 1));                    scan=false;                }            }                  });              itemadd_scan.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {                scan=true;                showItems();            }                  }); } void setLabel() {  for(int i=0;i<5;i++)   {      final int j=i;          labelgroup[i].addMouseListener(new java.awt.event.MouseAdapter(){                @Override               public void mouseClicked(java.awt.event.MouseEvent evt) {                LabelMouseClicked(phonebook,j,evt);            }          });       } } void LabelMouseClicked(PHbook p,int i,MouseEvent evt) {     if((i+index+1)<=phonebook.pbook.size()&&scan)     {          property.initPropertyBox(p, index+i);     } } void setButton(){    prevbutton.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {                if(index!=0&&scan)                       index-=5;                showItems();            }    });    nextbutton.addActionListener(new ActionListener(){            public void actionPerformed(ActionEvent e) {                if((index+6)<=phonebook.pbook.size()&&scan)                {                    index+=5;                }                showItems();            }            });}void showresult(PHbook p){   for(int i=0;i<5;i++)      {  if((i+1)<=p.pbook.size())         labelgroup[i].setText((i+1)+"  "+p.getItem(i).toString()+"   "+                 (p.getItem(i).getClass()==Teacher.class?"Teacher":"Student" ));         else{             labelgroup[i].setText((i+1)+"   还没有条目");         }      }    } void showItems() {     for(int i=0;i<5;i++)      {  if((i+index+1)<=phonebook.pbook.size())         labelgroup[i].setText((i+index+1)+"  "+phonebook.getItem(i+index).toString()+"   "+                 (phonebook.getItem(i+index).getClass()==Teacher.class?"Teacher":"Student" ));         else{             labelgroup[i].setText((i+index+1)+"   还没有条目");         }      }     repaint(); } void initlabels(){     for(int i=0;i<5;i++)     {         labelgroup[i]=new JLabel();         panel1.add(labelgroup[i]);     } }    public static void main(String[] args) {       MainFrame mainframe=new MainFrame();       mainframe.setVisible(true);           }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -