本文实例讲述了Java实现的简易记事本。分享给大家供大家参考。具体如下:
感觉这个没有自己以前用Windows API写的好看了。。。
JDK Version : 1.7.0
效果如下图所示:
源代码如下:
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
122
123
124
125
126
127
|
import java.io.*; import java.awt.*; import java.awt.event.*; /** * The Main Window * @author Neo Smith */ class PadFrame extends Frame { private MenuBar mb; private Menu menuFile; private Menu menuEdit; private MenuItem[] miFile; private TextArea ta; final private Frame frame = this ; /** * The inner class * Message Handle */ class EventExit implements ActionListener { public void actionPerformed(ActionEvent e) { System.exit( 0 ); } } class SystemExit extends WindowAdapter { public void windowClosing(WindowEvent e) { System.exit( 0 ); } } class EventMenuClose implements ActionListener { public void actionPerformed(ActionEvent e) { ta.setText( null ); } } class EventOpenFile implements ActionListener { public void actionPerformed(ActionEvent e) { //Create the OpenFile Dialog FileDialog dlg = new FileDialog(frame, "Open Files" ,FileDialog.LOAD); dlg.show(); String strPath; if ((strPath = dlg.getDirectory()) != null ) { //get the full path of the selected file strPath += dlg.getFile(); //open the file try { FileInputStream fis = new FileInputStream(strPath); BufferedInputStream bis = new BufferedInputStream(fis); byte [] buf = new byte [ 3000 ]; int len = bis.read(buf); ta.append( new String(buf, 0 ,len)); bis.close(); } catch (Exception ex) { ex.printStackTrace(); } } } } /** * Construction Method * Adding Menu and TextArea components * @param strTitle */ public PadFrame(String strTitle) { super (strTitle); this .setLocation( 400 , 200 ); this .setSize( 900 , 630 ); //Create the Menu Bar mb = new MenuBar(); menuFile = new Menu( "File" ); menuEdit = new Menu( "Edit" ); miFile = new MenuItem[]{ new MenuItem( "Open" ), new MenuItem( "Close" ), new MenuItem( "Exit" )}; this .setMenuBar(mb); mb.add(menuFile); mb.add(menuEdit); for ( int i = 0 ; i < miFile.length ; ++i) { menuFile.add(miFile[i]); } //Add event handle setMenuEventHandle( new EventExit(), "File" , 2 ); setMenuEventHandle( new EventOpenFile(), "File" , 0 ); setMenuEventHandle( new EventMenuClose(), "File" , 1 ); this .addWindowListener( new SystemExit()); //add the TextArea component ta = new TextArea( 30 , 30 ); this .add(ta); } public void setMenuEventHandle(ActionListener al,String strMenu, int index) { if (strMenu == "File" ) { miFile[index].addActionListener(al); } } public int getMenuItemAmount(String strMenu) { if ( "File" == strMenu) { return miFile.length; } return - 1 ; } public static void main(String[] args) { PadFrame f = new PadFrame( "NotePad" ); f.show(); } } |
希望本文所述对大家的java程序设计有所帮助。