求JAVA源代码!!急~ ~ ~

我只能给你第一个:

导入Java . awt . *;

导入Java . awt . event . *;

导入javax . swing . *;

公共类JNotePadUI扩展JFrame {

私有JMenuItem menuOpen

私有JMenuItem菜单保存;

私有JMenuItem menuSaveAs

私有JMenuItem menuClose

私有JMenu editMenu

私有JMenuItem menuCut

私有JMenuItem menuCopy

私有JMenuItem menuPaste

私有JMenuItem menuAbout

私有JTextArea textArea

列兵JLabel stateBar

私有JFileChooser fileChooser

私人JPopupMenu popUpMenu

公共JNotePadUI() {

Super("新文本文件");

setUpUIComponent();

setUpEventListener();

set visible(true);

}

私有void setUpUIComponent() {

setSize(640,480);

//菜单栏

JMenuBar menuBar = new JMenuBar();

//设置文件菜单

JMenu file menu = new JMenu(" file ");

menu open = new JMenuItem(" open ");

//快捷键设置

menuOpen.setAccelerator(

keystone . get keystone(

关键事件。VK_O,

输入事件。CTRL _ MASK));

menu save = new JMenuItem(" save ");

menuSave.setAccelerator(

keystone . get keystone(

关键事件。VK,

输入事件。CTRL _ MASK));

MenuSaveAs = new JMenuItem("另存为");

menu close = new JMenuItem(" close ");

menuClose.setAccelerator(

keystone . get keystone(

关键事件。VK_Q,

输入事件。CTRL _ MASK));

file menu . add(menu open);

file menu . add separator();//分模线

file menu . add(menu save);

file menu . add(menus aveas);

file menu . add separator();//分模线

file menu . add(menu close);

//设置编辑菜单

JMenu edit menu = new JMenu(" edit ");

menu cut = new JMenuItem(" cut ");

menuCut.setAccelerator(

keystone . get keystone(key event。VK X,

输入事件。CTRL _ MASK));

menu copy = new JMenuItem(" copy ");

menuCopy.setAccelerator(

keystone . get keystone(key event。VK特区,

输入事件。CTRL _ MASK));

menu paste = new JMenuItem(" paste ");

menu paste . set加速器(

keystone . get keystone(key event。VK五世,

输入事件。CTRL _ MASK));

edit menu . add(menu cut);

edit menu . add(menu copy);

editmenu . add(menu paste);

//设置“关于”菜单

JMenu about menu = new JMenu(" about ");

MenuAbout = new JMenuItem("关于JNotePad ");

about menu . add(menu about);

menuBar.add(文件菜单);

menubar . add(edit menu);

menuBar.add(关于菜单);

setJMenuBar(菜单栏);

//文本编辑区域

textArea = new JTextArea();

TextArea.setFont(新字体("ì",字体。平原,16));

textarea . setline wrap(true);

JScrollPane panel = new JScrollPane(textArea,

ScrollPaneConstants。VERTICAL _ SCROLLBAR _ AS _ NEEDED,

ScrollPaneConstants。水平_滚动条_从不);

container content pane = getContentPane();

contentPane.add(panel,BorderLayout。中心);

//状态栏

StateBar = new JLabel("未修改");

state bar . sethorizontal alignment(swing constants。左);

stateBar.setBorder(

border factory . createetchedborder());

contentPane.add(stateBar,BorderLayout。南);

popup menu = edit menu . getpopup menu();

file chooser = new jfile chooser();

}

私有void setUpEventListener() {

//按下窗口关闭按钮的事件处理

addWindowListener(

新建WindowAdapter() {

public void window closing(window event e){

close file();

}

}

);

//菜单-打开

menuOpen.addActionListener(

新的ActionListener() {

public void action performed(action event e){

openFile();

}

}

);

//菜单-保存

menuSave.addActionListener(

新的ActionListener() {

public void action performed(action event e){

save file();

}

}

);

//菜单-另存为

menuSaveAs.addActionListener(

新的ActionListener() {

public void action performed(action event e){

save file as();

}

}

);

//菜单-关闭文件

menuClose.addActionListener(

新的ActionListener() {

public void action performed(action event e){

close file();

}

}

);

//菜单剪切

menuCut.addActionListener(

新的ActionListener() {

public void action performed(action event e){

cut();

}

}

);

//菜单-复制

menuCopy.addActionListener(

新的ActionListener() {

public void action performed(action event e){

copy();

}

}

);

//菜单-粘贴

menuPaste.addActionListener(

新的ActionListener() {

public void action performed(action event e){

paste();

}

}

);

//菜单-关于

menuAbout.addActionListener(

新的ActionListener() {

public void action performed(action event e){

//显示对话框

JOptionPane.showOptionDialog(空,

"程序名:\n JNotePad \n"+

“编程:\n?\n" +

简介:\ n简单的文本编辑器\ n,

“关于JNotePad”,

JOptionPane。默认选项,

JOptionPane。信息_消息,

null,null,null);

}

}

);

//编辑区域键盘事件

textArea.addKeyListener(

新密钥适配器(){

公共void键入的(KeyEvent e) {

process textarea();

}

}

);

//编辑区域鼠标事件

textArea.addMouseListener(

新鼠标适配器(){

public void mouse released(mouse event e){

if(e.getButton() == MouseEvent。按钮3)

popUpMenu.show(editMenu,e.getX(),e . gety());

}

public void mouse clicked(mouse event e){

if(e.getButton() == MouseEvent。按钮1)

popup menu . set visible(false);

}

}

);

}

私有void openFile() {

If(isCurrentFileSaved()) {//文件是否处于保存状态?

open();//打开

}

否则{

//显示对话框

int option = jooptionpane . showconfirmdialog(

空,"文件已被修改。要不要救?”,

“保存文件?”,JOptionPane。是_否_选项,

JOptionPane。WARNING_MESSAGE,null);

开关(可选){

//确认文件保存

case JOptionPane。是_选项:

save file();//保存文件

打破;

//放弃保存文件

case JOptionPane。NO _选项:

open();

打破;

}

}

}

private boolean isCurrentFileSaved(){

If(stateBar.getText()。等于(“未修改”){

返回true

}

否则{

返回false

}

}

私有void open() {

// fileChooser是JFileChooser的实例。

//显示文件选择对话框。

int option = file chooser . showdialog(null,null);

//用户按下Enter键。

if(option == JFileChooser。APPROVE_OPTION) {

/*

TODO:添加代码以读取文件。

*/

}

}

私有void saveFile() {

/*

TODO:添加代码以保存文件。

*/

}

私有void saveFileAs() {

/*

TODO:添加另存为的代码。

*/

}

私有void closeFile() {

//文件保存了吗?

if(isCurrentFileSaved()) {

//释放窗口资源,然后关闭程序。

dispose();

}

否则{

int option = jooptionpane . showconfirmdialog(

空,"文件已被修改。要不要救?”,

“保存文件?”,JOptionPane。是_否_选项,

JOptionPane。WARNING_MESSAGE,null);

开关(可选){

case JOptionPane。是_选项:

save file();

打破;

case JOptionPane。NO _选项:

dispose();

}

}

}

私有void cut() {

textarea . cut();

state bar . settext(" modified ");

popup menu . set visible(false);

}

私有void副本(){

textarea . copy();

popup menu . set visible(false);

}

私有void粘贴(){

textarea . paste();

state bar . settext(" modified ");

popup menu . set visible(false);

}

私有void processTextArea() {

state bar . settext(" modified ");

}

公共静态void main(String[] args) {

new JNotePadUI();

}

}