import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.font.*;
import java.io.*;
class TextEditorFrame extends JFrame{
File file=null;
Font font;
Color color=Color.red; TextEditorFrame(){
initTextPane();
initAboutDialog();
initMenu();
}
void initTextPane(){
getContentPane().add(new JScrollPane(text));
} JTextPane text=new JTextPane(); //这是用来做文本框的
JFileChooser filechooser=new JFileChooser(); //文件选择框
JColorChooser colorchooser=new JColorChooser();//
JDialog about=new JDialog(this); //关于对话框
JMenuBar menubar=new JMenuBar();//菜单
JMenu[] menus=new JMenu[]{
new JMenu("文件"),
new JMenu("编辑"),
new JMenu("格式"),
new JMenu("帮助")
}; JMenuItem menuitems[][]=new JMenuItem[][]{{
new JMenuItem("新建"),
new JMenuItem("打开"),
new JMenuItem("保存"),
new JMenuItem("退出")
}, { new JMenuItem("复制"),
new JMenuItem("剪切"),
new JMenuItem("粘贴"),
new JMenuItem("颜色")
}, { new JMenuItem("字体"),
new JMenuItem("颜色")
},
{
new JMenuItem("关于")
}
};
void initMenu(){ for(int i=0;i<menus.length;i++){
menubar.add(menus[i]);
for(int j=0;j<menuitems[i].length;j++){
menus[i].add(menuitems[i][j]);
menuitems[i][j].addActionListener( action );
}
}
this.setJMenuBar(menubar);
}
ActionListener action=new ActionListener(){
public void actionPerformed(ActionEvent e){
JMenuItem mi=(JMenuItem)e.getSource();
String id=mi.getText();
if(id.equals("新建")){
text.setText("");
file=null;
}else if(id.equals("打开")){
if(file !=null)filechooser.setSelectedFile(file);
int returnVal=filechooser.showOpenDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){ file=filechooser.getSelectedFile();
openFile();
} }else if(id.equals("保存")){
if(file!=null) filechooser.setSelectedFile(file);
int returnVal=filechooser.showSaveDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){
file=filechooser.getSelectedFile();
saveFile();
} }else if(id.equals("退出")){
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_CANCEL_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);
}else if(id.equals("剪切")){
text.cut();
}else if(id.equals("复制")){
text.copy();
}else if(id.equals("粘贴")){
text.paste();
}else if(id.equals("字体")){
}else if(id.equals("颜色")){
color=JColorChooser.showDialog(TextEditorFrame.this,"",color);
text.setForeground(color); }else if(id.equals("关于")){
about.setSize(200,150);
about.show();
}
}
};
void saveFile(){
try{
FileWriter fw=new FileWriter(file);
fw.write(text.getText());
fw.close();
}
catch(Exception e){e.printStackTrace();} } void openFile(){
try{
FileReader fr=new FileReader(file);
int len=(int)file.length();
char []buffer=new char[len];
fr.read(buffer,0,len);
fr.close();
text.setText(new String(buffer));
}catch(Exception e){e.printStackTrace();}
} void initAboutDialog(){
about.getContentPane().add(new JLabel("作者-:记事本"));
about.getContentPane().add(new JLabel("www.163.com"));
about.setModal(true);
about.setSize(200,100);
}
}
public class jsb{
public static void main(String args[]){ TextEditorFrame f=new TextEditorFrame(); f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);}
});
f.setTitle("简单的记事本");
f.setSize(500,400);
f.show();
}
}
import java.awt.event.*;
import javax.swing.*;
import java.awt.font.*;
import java.io.*;
class TextEditorFrame extends JFrame{
File file=null;
Font font;
Color color=Color.red; TextEditorFrame(){
initTextPane();
initAboutDialog();
initMenu();
}
void initTextPane(){
getContentPane().add(new JScrollPane(text));
} JTextPane text=new JTextPane(); //这是用来做文本框的
JFileChooser filechooser=new JFileChooser(); //文件选择框
JColorChooser colorchooser=new JColorChooser();//
JDialog about=new JDialog(this); //关于对话框
JMenuBar menubar=new JMenuBar();//菜单
JMenu[] menus=new JMenu[]{
new JMenu("文件"),
new JMenu("编辑"),
new JMenu("格式"),
new JMenu("帮助")
}; JMenuItem menuitems[][]=new JMenuItem[][]{{
new JMenuItem("新建"),
new JMenuItem("打开"),
new JMenuItem("保存"),
new JMenuItem("退出")
}, { new JMenuItem("复制"),
new JMenuItem("剪切"),
new JMenuItem("粘贴"),
new JMenuItem("颜色")
}, { new JMenuItem("字体"),
new JMenuItem("颜色")
},
{
new JMenuItem("关于")
}
};
void initMenu(){ for(int i=0;i<menus.length;i++){
menubar.add(menus[i]);
for(int j=0;j<menuitems[i].length;j++){
menus[i].add(menuitems[i][j]);
menuitems[i][j].addActionListener( action );
}
}
this.setJMenuBar(menubar);
}
ActionListener action=new ActionListener(){
public void actionPerformed(ActionEvent e){
JMenuItem mi=(JMenuItem)e.getSource();
String id=mi.getText();
if(id.equals("新建")){
text.setText("");
file=null;
}else if(id.equals("打开")){
if(file !=null)filechooser.setSelectedFile(file);
int returnVal=filechooser.showOpenDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){ file=filechooser.getSelectedFile();
openFile();
} }else if(id.equals("保存")){
if(file!=null) filechooser.setSelectedFile(file);
int returnVal=filechooser.showSaveDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){
file=filechooser.getSelectedFile();
saveFile();
} }else if(id.equals("退出")){
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_CANCEL_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);
}else if(id.equals("剪切")){
text.cut();
}else if(id.equals("复制")){
text.copy();
}else if(id.equals("粘贴")){
text.paste();
}else if(id.equals("字体")){
}else if(id.equals("颜色")){
color=JColorChooser.showDialog(TextEditorFrame.this,"",color);
text.setForeground(color); }else if(id.equals("关于")){
about.setSize(200,150);
about.show();
}
}
};
void saveFile(){
try{
FileWriter fw=new FileWriter(file);
fw.write(text.getText());
fw.close();
}
catch(Exception e){e.printStackTrace();} } void openFile(){
try{
FileReader fr=new FileReader(file);
int len=(int)file.length();
char []buffer=new char[len];
fr.read(buffer,0,len);
fr.close();
text.setText(new String(buffer));
}catch(Exception e){e.printStackTrace();}
} void initAboutDialog(){
about.getContentPane().add(new JLabel("作者-:记事本"));
about.getContentPane().add(new JLabel("www.163.com"));
about.setModal(true);
about.setSize(200,100);
}
}
public class jsb{
public static void main(String args[]){ TextEditorFrame f=new TextEditorFrame(); f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e) {
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);}
});
f.setTitle("简单的记事本");
f.setSize(500,400);
f.show();
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货