package wansggebuju;
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.Container;
import java.text.SimpleDateFormat;
import javax.swing.JCheckBoxMenuItem;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JMenuItem;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import java.util.Date;
import java.awt.event.*;
public class book extends JFrame implements ActionListener{
JMenuBar menubar;
JMenu bj,file,gs,ck,bz,m;
JMenuItem wenj,bj2,gs2,ck2,bz2,mus;
JTextField jf;
JTextArea t;
String wj[],bj1[],bz1[],gs1[],ck1[];
public book(){
this.setTitle("记事本");
this.setSize(600,500);
this.setLocation(400,100);
this.gongJuLan();
this.text();
this.zt_text();
this.src();
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);
}
//菜单条
void gongJuLan(){
/*
* JmenuBar 菜单条
* Jmenu 菜单
* JmenuItem 菜单项
* setmnemonic();设置助记符,按下ALT+“”可以选择
* addseparator();菜单分隔符
*/
menubar = new JMenuBar();
//文件菜单栏
file =new JMenu("文件(F)");
file.setMnemonic('F');
String wj[] = {"新建(N)",
"打开(O)",
"保存(S)",
"另存为(A)",
"打印(P)",
"退出(X)"};
for(int i=0;i<wj.length;i++){
wenj = new JMenuItem(wj[i]);
wenj.addActionListener(this);
file.add(wenj);
if(i==4||i==6){
file.addSeparator();
}
}
//编辑菜单栏
bj = new JMenu("编辑(E)");
bj.setMnemonic('E');
String bj1[] = {"剪切(T)",
"复制(C)",
"粘贴(P)",
"删除(L)",
"查找(F)",
"替换(R)",
"时间、日期(D)"};
for(int i=0;i<bj1.length;i++){
bj2 = new JMenuItem(bj1[i]);
bj2.addActionListener(this);
bj.add(bj2);
if(i==0||i==4||i==10){
bj.addSeparator();
}
}
//格式菜单栏
gs = new JMenu("格式(O)");
gs.setMnemonic('O');
String gs1[]={"自动换行(W)","字体(F)"};
for(int i=0;i<gs1.length;i++){
gs2 = new JMenuItem(gs1[i]);
gs2.addActionListener(this);
gs.add(gs2);
}
//查看 菜单栏
ck = new JMenu("查看(V)");
ck.setMnemonic('V');
JMenu ck1 =new JMenu("缩放(Z)");
String s[] ={"放大(I)",
"缩小(O)",
"恢复默认缩放"};
for(int i=0;i<s.length;i++){
ck2 = new JMenuItem(s[i]);
ck2.addActionListener(this);
ck1.add(ck2);
}
JCheckBoxMenuItem ck2 = new JCheckBoxMenuItem("状态栏");
ck2.addActionListener(this);
ck.add(ck1);
ck.add(ck2);
//帮助菜单栏
bz=new JMenu("帮助(H)");
bz.setMnemonic('H');
String bz1[]={"查看帮助(H)","发送反馈(F)","关于记事本(A)"};
for(int i=0;i<bz1.length;i++){
bz2 = new JMenuItem(bz1[i]);
bz2.addActionListener(this);
bz.add(bz2);
if(i==1){
bz.addSeparator();
}
}
//点击显示文本
m = new JMenu("显示");
mus = new JMenuItem("文本");
mus.addActionListener(this);
m.add(mus);
menubar.add(file);
menubar.add(bj);
menubar.add(gs);
menubar.add(ck);
menubar.add(bz);
menubar.add(m);
setJMenuBar(menubar);
}
//文本框
void text(){
t = new JTextArea();
this.add(t,BorderLayout.CENTER);
t.append("123");
t.setLineWrap(true); //自动换行
}
//状态栏
void zt_text(){
JLabel t1=new JLabel();
Date now = new Date();
SimpleDateFormat dateformat = new SimpleDateFormat("yyyy/MM/dd");//方便修改格式
String he = dateformat.format(now);
t1.setBackground(Color.lightGray);
this.add(t1,BorderLayout.SOUTH);
t1.setText("100% | "+he+" | UTF-8 | ");
}
//滚动条
void src(){
/*TextArea t1;
t1=new TextArea(" ",2,10,TextArea.SCROLLBARS_BOTH);
this.add(t1);
*/
t=new JTextArea();
JScrollPane pane = new JScrollPane(t);
this.add(pane,BorderLayout.CENTER);
}
//实现功能函数
//功能实现
public void newFile(){
System.out.println(1);
}
@Override
public void actionPerformed(ActionEvent e) {
String str = e.getActionCommand();
System.out.println(str+"被点击了");
//文件
if(e.getSource()==wj[0]){
//新建
System.out.println(wj[0]);
//newFile();
}
}
public static void main(String[] args) {
new book();
}
}
既然报错了,那么报错信息呢。你不把报错信息发出来,别人怎么帮你分析问题呢
最后的调用需要实现的功能是新建,卡了好久了,自闭