制作个人简历

来源:互联网 发布:控制网络的技术特点 编辑:程序博客网 时间:2024/06/11 09:02

1.题目要求:
制作个人简历,要求有文本域输入信息,单选按钮和复选按钮进行选择,点击提交按钮后在文本区显示所输入的信息和选择的信息,点击清空后文本区内容为空。
2.思路:
(1)创建简历中需要的各种组件:
JLabel创建标签对象、JTextField创建文本域对象,JPanel创建面板对象,将各组件放入对应面板当中,Container创建容器对象,将各组织好的面板放入容器当中。
(2)定义好各部分后,提交和清空需要定义事件监听,通过事件相应方法来实现。各选择类的项需通过选项监听器中的方法来实现。
3.实现效果:
这里写图片描述

4.代码实现:

public class MyJianLi extends JFrame{   //创建对象    JFileChooser fc=new JFileChooser();    Container ct;     JPanel p1;    //个人简历    JPanel p2;    //姓名、性别    JTextField tf1;    String name,sex;    JRadioButton jrb1,jrb2;    JPanel p3;    //生日、年龄    String year,month,day;    int y=0,m=1;    int nl;    JComboBox jcb1,jcb2,jcb3;    JTextField tf2;    JPanel p4;    //住址    String address;    JTextField tf3;    JPanel p5;    //政治面貌、所学课程    String politics,objects;    JComboBox jcb4;    JList list1;    JPanel p6;    //专业    String specialty;    JTextField tf4;    JPanel p7;    //兴趣爱好    int a[]={0,0,0,0,0,0,0};    JCheckBox jc1,jc2,jc3,jc4,jc5,jc6,jc7;    String interest="";    JPanel p8;    //毕业院校    JTextField tf5;    String graduate;    JPanel p9;    //专业技能    String filedname;    JTextField tf6;    JScrollPane p10;   //文本域面板    JTextArea ta;    JPanel p11;   //提交、清空    public MyJianLi()    {        JPanel p1=new JPanel();                             JPanel p2=new JPanel();                            JPanel p3=new JPanel();                       JPanel p4=new JPanel();                              JPanel p5=new JPanel();                             JPanel p6=new JPanel();                              JPanel p7=new JPanel();                             JPanel p8=new JPanel();                             JPanel p9=new JPanel();                            JPanel p10=new JPanel();                             JPanel p11=new JPanel();                            this.setTitle("个人简历");                   ct=this.getContentPane();                          ct.setLayout(new BoxLayout(ct,BoxLayout.Y_AXIS));                     buildJPanel1( p1);                                 ct.add(p1);                                      buildJPanel2( p2);                                 ct.add(p2);                                         buildJPanel3( p3);                                 ct.add(p3);                                       buildJPanel4( p4);                                  ct.add(p4);                                      buildJPanel5( p5);                                  ct.add(p5);                                        buildJPanel6( p6);                                  ct.add(p6);                                       buildJPanel7( p7);                                 ct.add(p7);                                        buildJPanel8( p8);                                  ct.add(p8);                                        buildJPanel9( p9);                                 ct.add(p9);                                        buildJPanel10( p10);                                ct.add(p10);                                       buildJPanel11( p11);                                ct.add(p11);                                      this.setVisible(true);                     this.setSize(600,850);         this.setLocation(500, 100);        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);    }//具体实现部分:   //****************个人简历**********************************//private void buildJPanel1(JPanel p1){                        p1.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l1 =new JLabel("个人简历");    l1.setHorizontalAlignment(JLabel.CENTER);    l1.setFont(new Font("个人简历",1,40));    l1.setEnabled(false);    p1.add(l1);}//****************姓名、性别********************************//private void buildJPanel2(JPanel p2){                       p2.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l2 =new JLabel("姓名");    JLabel l3 =new JLabel("性别");    p2.add(l2);    tf1=new JTextField(25);    p2.add(tf1);    tf1.addActionListener(new TJActionListener());    p2.add(l3);     jrb1=new JRadioButton("男");     jrb1.setSelected(true);    jrb1.addItemListener(new JRB());     jrb2=new JRadioButton("女");    jrb2.addItemListener(new JRB());    ButtonGroup bG=new ButtonGroup();    bG.add(jrb1);    bG.add(jrb2);    p2.add(jrb1);    p2.add(jrb2);    p2.setSize(450,100);    p2.setEnabled(false);}//*****************生日、年龄***************************//private void buildJPanel3(JPanel p3){                         p3.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l4 =new JLabel("生日:");     jcb1=new JComboBox();     for(int i=1949;i<2012;i++)         jcb1.addItem(String.valueOf(i));    JLabel l5 =new JLabel("年");     jcb2=new JComboBox();    for(int i=1;i<13;i++)         jcb2.addItem(String.valueOf(i));       JLabel l6 =new JLabel("月");     jcb3=new JComboBox();     for(int i=1;i<32;i++)         jcb3.addItem(String.valueOf(i));     JLabel l7 =new JLabel("日");     jcb1.addItemListener(new JBC1());     jcb2.addItemListener(new JBC2());     jcb3.addItemListener(new JBC3());    JLabel l8 =new JLabel("年龄:");    tf2 =new JTextField(12);    tf2.addActionListener(new TJActionListener());    tf2.setEditable(true);    p3.add(l4);    p3.add(jcb1);    p3.add(l5);    p3.add(jcb2);    p3.add(l6);    p3.add(jcb3);    p3.add(l7);    p3.add(l8);    p3.add(tf2);}//*****************家庭住址***************************//private void buildJPanel4(JPanel p4){                         p4.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l9 =new JLabel("家庭住址");     tf3 =new JTextField(38);    p4.add(l9);    p4.add(tf3);}//**************政治面貌、所学课程***********************//private void buildJPanel5(JPanel p5){                         p5.setLayout(new FlowLayout(FlowLayout.CENTER));    String zz[]={"共产党员","共青团员","民进党员","国民党员","民主党员","共和党员","其他党派"};    String SX[]={"JAVA组件","软件工程","数据库应用","数据结构","C语言基础","专业外语","大学物理","高等数学","大学英语"};    JLabel l10 =new JLabel("政治面貌");     jcb4=new JComboBox(zz);     jcb4.addItemListener(new JCB4());    JLabel l11 =new JLabel("所学课程");    list1 =new JList(SX);        list1.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);//允许选择相邻的一系列行    list1.addListSelectionListener(new lListSelectionListener());    JScrollPane sp1=new JScrollPane(list1);    sp1.setPreferredSize(new Dimension(250,70));    sp1.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);    p5.add(l10);    p5.add(jcb4);    p5.add(l11);    p5.add(sp1);}//***************所学专业***************************//private void buildJPanel6(JPanel p6){                        p6.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l12 =new JLabel("所学专业");     tf4 =new JTextField(36);    p6.add(l12);    p6.add(tf4);}//***************兴趣爱好***************************//private void buildJPanel7(JPanel p7){                        p7.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l13 =new JLabel("兴趣爱好");     jc1 =new JCheckBox("阅读");     jc1.addItemListener(new P7());     jc2 =new JCheckBox("运动");     jc2.addItemListener(new P7());     jc3 =new JCheckBox("饮食");     jc3.addItemListener(new P7());     jc4 =new JCheckBox("旅游");     jc4.addItemListener(new P7());     jc5 =new JCheckBox("音乐");     jc5.addItemListener(new P7());     jc6 =new JCheckBox("影视");     jc6.addItemListener(new P7());     jc7 =new JCheckBox("书籍");     jc7.addItemListener(new P7());    p7.add(l13);    p7.add(jc1);    p7.add(jc2);    p7.add(jc3);    p7.add(jc4);    p7.add(jc5);    p7.add(jc6);    p7.add(jc7);}//*************毕业院校*****************************//private void buildJPanel8(JPanel p8){                        p8.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l14 =new JLabel("毕业院校");     tf5 =new JTextField(36);    p8.add(l14);    p8.add(tf5);}//************专业技能*********************************//private void buildJPanel9(JPanel p9){                        p9.setLayout(new FlowLayout(FlowLayout.CENTER));    JLabel l15 =new JLabel("专业技能");    tf6 =new JTextField(37);    p9.add(l15);    p9.add(tf6);}//***********文本区***********************************//private void buildJPanel10(JPanel p10){                        p10.setLayout(new FlowLayout(FlowLayout.CENTER));     ta =new JTextArea(10,40);    ta.setEditable(false);    JScrollPane sp2=new JScrollPane(ta);     sp2.setSize(450,100);    sp2.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);    p10.add(sp2,BorderLayout.CENTER);    p10.setVisible(true);}//**********清空、提交****************************//private void buildJPanel11(JPanel p11){                        p11.setLayout(new FlowLayout(FlowLayout.CENTER));                            JButton bt1 =new JButton("提交");//构建按钮提交    JButton bt4 =new JButton("清空");//构建按钮清空    bt1.addActionListener(new TJActionListener());    bt4.addActionListener(new QKActionListener());    p11.add(bt1);    p11.add(bt4);}//**********点击清空时发生**********************//定义事件class QKActionListener implements ActionListener{       public void actionPerformed(ActionEvent event)    {    ta.setText("");    }}//*********点击提交时发生**********************//class TJActionListener implements ActionListener{       public void actionPerformed(ActionEvent event)    {        //**************************************姓名栏    name=tf1.getText();    if(name!=null&&!name.equals(""))         ta.append("姓名: "+name+"\n");    else        ta.append("姓名未输入,请输入:\n");  //*******************************************性别栏    if(sex!=null&&!sex.equals(""))      ta.append("性别: "+sex+"\n");   else      ta.append("性别未输入,请输入:\n");  //*******************************************生日    if(year!=null&&!year.equals(""))        if(month!=null&&!month.equals(""))            if(day!=null&&!day.equals(""))                 ta.append("出生日期:"+year+ "\\" +month+"\\"+day+"\n");                else                 ta.append("日期未输入,请输入:\n");         else            ta.append("月份未输入,请输入:\n");     else     ta.append("年份未输入,请输入:\n");  //******************************************年龄栏     if(nl!=0)        ta.append("年龄为:"+nl+"\n");    else        ta.append("年龄输出错误:\n");  //******************************************地址栏    address=tf3.getText();    if(address!=null&&!address.equals(""))       ta.append("地址: "+address+"\n");   else    ta.append("地址未输入,请输入:\n");  //******************************************政治面貌    politics=(String)jcb4.getSelectedItem();    if(politics!=null&&!politics.equals(""))     ta.append("政治面貌: "+politics+"\n");   else    ta.append("政治面貌未输入,请输入:\n");  //******************************************所学课程    if(objects!=null&&!objects.equals(""))     ta.append("所学课程: "+objects+"\n");   else    ta.append("所学课程未输入,请输入:\n");  //******************************************所学专业    specialty=tf4.getText();    if(specialty!=null&&!specialty.equals(""))     ta.append("所学专业: "+specialty+"\n");   else    ta.append("所学专业未输入,请输入:\n");  //******************************************兴趣爱好    if(interest!=null&&!interest.equals(""))         ta.append("兴趣爱好: "+interest+"\n");      else        ta.append("兴趣爱好未输入,请输入:\n");  //******************************************毕业院校    graduate=tf5.getText();    if(graduate!=null&&!graduate.equals(""))         ta.append("毕业院校: "+graduate+"\n");      else        ta.append("毕业院校未输入,请输入:\n");   //******************************************专业技能    filedname=tf6.getText();    if(filedname!=null&&!filedname.equals(""))        fc.setSelectedFile(new File(filedname));     else        ta.append("专业技能未输入,请输入:\n");    }}//***********************实现事件监听*****************////***************************************性别class  JRB implements ItemListener{    public void itemStateChanged(ItemEvent e)    {        if((JRadioButton)e.getItem()==jrb1)            if(e.getStateChange()==ItemEvent.SELECTED)                sex="男";            else                sex="";        else if((JRadioButton)e.getItem()==jrb2)           if(e.getStateChange()==ItemEvent.SELECTED)              sex="女";           else               sex="";    }}//*****************************************年、月、日class JBC1 implements ItemListener{    public void itemStateChanged(ItemEvent e)    {        if(e.getStateChange()==ItemEvent.SELECTED)        {            year=(String)jcb1.getSelectedItem();            y=Integer.parseInt((String)jcb1.getSelectedItem());            nl=2012-y;            tf2.setText(String.valueOf(nl));         }    }}class JBC2 implements ItemListener{    public void itemStateChanged(ItemEvent e)    {        if(e.getStateChange()==ItemEvent.SELECTED)        month=(String)jcb2.getSelectedItem();        m=Integer.parseInt((String)jcb2.getSelectedItem());        if(m==4||m==6||m==9||m==11)        {            jcb3.removeAllItems();            for(int i=1;i<31;i++)                jcb3.addItem(String.valueOf(i));        }        if(m==1||m==3||m==5||m==7||m==8||m==10||m==12)        {            jcb3.removeAllItems();            for(int i=1;i<32;i++)                jcb3.addItem(String.valueOf(i));        }        int f;            if(y%4==0)                if(y%100==0)                    if(y%400==0)                        f=1;                    else                        f=0;                else                    f=1;            else                f=0;            if(m==2)                if(f==1)                {                    jcb3.removeAllItems();                    for(int i=1;i<29;i++)                        jcb3.addItem(String.valueOf(i));                }                else                {                    jcb3.removeAllItems();                    for(int i=1;i<30;i++)                        jcb3.addItem(String.valueOf(i));                }               }}class JBC3 implements ItemListener{    public void itemStateChanged(ItemEvent e)    {         if(e.getStateChange()==ItemEvent.SELECTED)               day=(String)jcb3.getSelectedItem();    }}//***************************************政治面貌、所选课程class JCB4 implements ItemListener{    public void itemStateChanged(ItemEvent e)    {            if(e.getStateChange()==ItemEvent.SELECTED)                politics=(String)jcb4.getSelectedItem();    }}class lListSelectionListener  implements ListSelectionListener{     public void valueChanged(ListSelectionEvent e)    {        objects=(String)list1.getSelectedValue();    }}//***********************************************兴趣爱好class P7 implements ItemListener{    public void itemStateChanged(ItemEvent e)    {        if((JCheckBox)e.getItem()==jc1)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[0]=1;            else                 a[0]=0;        if((JCheckBox)e.getItem()==jc2)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[1]=1;            else                 a[1]=0;        if((JCheckBox)e.getItem()==jc3)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[2]=1;            else                 a[2]=0;        if((JCheckBox)e.getItem()==jc4)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[3]=1;            else                 a[3]=0;        if((JCheckBox)e.getItem()==jc5)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[4]=1;            else                 a[4]=0;        if((JCheckBox)e.getItem()==jc6)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[5]=1;            else                 a[5]=0;        if((JCheckBox)e.getItem()==jc7)            if(e.getStateChange()==ItemEvent.SELECTED)                 a[6]=1;            else                 a[6]=0;        interest =INT(a);    }}public String INT (int a[]){    String s="";     String Color[]={"阅读"," 运动"," 饮食"," 旅游"," 音乐"," 影视"," 书籍"};    for(int i=0;i<7;i++)        if(a[i]!=0)            s= s +Color[i];        else            continue;    return s;}    public static void main(String[] args)     {    new MyJianLi();    }}
0 0
原创粉丝点击