我的JAVA入门了吗?没有入门吗?入门了吧?!

这学期开始学习JAVA了。 o(︶︿︶)o 唉 其实我真的很不想学啊。

毕竟学好一门语言就够了哎, 但是我那不服输的性格作怪,让我自己去买了一本超厚的 《JAVA编程思想》来看,只为了不让老师各种刁难而已。

JAVA可以说是FLASH之父吧,包括文法结构和监听器。 不过监听器方面,确实FLASH更先进一点的说。FLASH所有的监听都是统一 addEventListener(监听类型,实现方法) 构成的。 JAVA却是不同的,有分 ActionListener, windowListner btnActionListener and so on……

而且嘛,完全没有图形化工具,和现成的控件都要靠代码实现。 界面布局也要很抽象的思考才行。

那么~先放上我第一个真正意义上的JAVA程序的代码做个纪念吧。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
import java.awt.Dimension;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.*;


public class Main {
    public static void main(String[] args)
    {
        //调用Center类,初始化窗口居中,名称,及大小
        Center myFrame=new Center("教师助手系统",800,600);
       
        //建立菜单条
        MenuBar myJmb=new MenuBar();
       
        //框体加载菜单条
        myFrame.setMenuBar(myJmb);  
       
        //定义菜单
        Menu myMenu[]={new Menu("学生信息管理"),new Menu("座位安排"),
        new Menu("点名"),new Menu("作业"),new Menu("教学大纲"),
        new Menu("教案"),new Menu("实验安排")};
        MenuItem myMi1[]={new MenuItem("学号"),new MenuItem("姓名"),new MenuItem("性别")};
        MenuItem myMi2[]={new MenuItem("理论课"),new MenuItem("实验课")};
        MenuItem myMi3[]={new MenuItem("学生名单"),new MenuItem("作为信息")};
        MenuItem myMi4[]={new MenuItem("电子文档"),new MenuItem("出勤成绩"),
        new MenuItem("作业成绩"),new MenuItem("期中试卷成绩"),new MenuItem("期末试卷成绩"),
        new MenuItem("其他成绩")};
       
        //子菜单添加监听
        for(int i=0;i<myMi1.length;i++)
        {
            myMi1[i].addActionListener(al);
        }
       
        //顶级菜单添加子菜单
        for(int i=0;i<myMi1.length;i++)
        {
            myMenu[0].add(myMi1[i]);
        }
        for(int i=0;i<myMi2.length;i++)
        {
            myMenu[1].add(myMi2[i]);
        }
        for(int i=0;i<myMi3.length;i++)
        {
            myMenu[2].add(myMi3[i]);
        }
        for(int i=0;i<myMi4.length;i++)
        {
            myMenu[3].add(myMi4[i]);
        }
       
        //菜单条加载菜单项
        for(int i=0;i<myMenu.length;i++)
        {
            myJmb.add(myMenu[i]);
        }
       
        //添加关闭窗口监听
        myFrame.setDefaultCloseOperation(WindowConstants.DO_NOTHING_ON_CLOSE);
        myFrame.addWindowListener(new WindowAdapter() {
            public void windowClosing(WindowEvent e) {
                int i;
                i = JOptionPane.showConfirmDialog(null, "是否要退出?", "",
                        JOptionPane.YES_NO_OPTION);
                if (i == JOptionPane.YES_OPTION) {
                    System.exit(0);
                } else {
                    return;
                }
            }
        });
       
    }
    public static ActionListener al = new ActionListener()//实现按钮监听
    {
        public void actionPerformed(ActionEvent e)
        {
            if(e.getActionCommand().equals("学号"))//获取菜单项的名字
            {
                System.exit(0);//退出程序
            }
            if(e.getActionCommand().equals("姓名"))
            {
                System.out.println("hello world");
            }
            if(e.getActionCommand().equals("性别"))
            {
                Gender ge=new Gender();
            }
        }
    };
}

import java.awt.Dimension;
import java.awt.Toolkit;
import java.awt.event.*;

import javax.swing.*;

public class Center extends JFrame {
        //通过实例化次类,类实现每个窗口居中的功能
    public Center(String name, int height, int width) {
        this.setTitle(name);
        this.setSize(height, width);
        int windowsHeight = this.getHeight();
        int windowsWidth = this.getWidth();
        Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
        this.setLocation(screenSize.width / 2 - windowsWidth / 2,
                screenSize.height / 2 - windowsHeight / 2);
        this.setVisible(true);
    }
}

发表评论

电子邮件地址不会被公开。 必填项已用*标注

This site uses Akismet to reduce spam. Learn how your comment data is processed.