import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class NotePad extends JFrame implements ActionListener{
private JMenuItem fileNew = new JMenuItem("新建(N) Ctrl+N");
private JMenuItem fileOpen = new JMenuItem("打开(O) Ctrl+O");
private JMenuItem fileSave = new JMenuItem("保存(S) Ctrl+S");
private JMenuItem fileSave_As = new JMenuItem("另存为(A)");
private JMenuItem filePage_Setup = new JMenuItem("页面设置(U)");
private JMenuItem filePrint = new JMenuItem("打印(P) Ctrl+P");
private JMenuItem fileExit= new JMenuItem("退出(X)");
private JMenuItem editRevocation = new JMenuItem("撤销(U) Ctrl+Z");
private JMenuItem editShear = new JMenuItem("剪切(T) Ctrl+X");
private JMenuItem editCopy = new JMenuItem("复制(C) Ctrl+C");
private JMenuItem editPaste = new JMenuItem("粘贴(P) Ctrl+P");
private JMenuItem editDelete = new JMenuItem("删除(Del) Del");
private JMenuItem editFind = new JMenuItem("查找(F) Ctrl+F");
private JMenuItem editFind_Next = new JMenuItem("查找下一个(N) F3");
private JMenuItem editReplacement = new JMenuItem("替换(R) Ctrl+H");
private JMenuItem editGo = new JMenuItem("转到(G) Ctrl+G");
private JMenuItem editSelet = new JMenuItem("全选(A) Ctrl+A");
private JMenuItem editTime_Date = new JMenuItem("时间/日期(D) F5");
private JMenuItem formatWrap = new JMenuItem("自动换行(W)");
private JMenuItem formatFonts = new JMenuItem("字体(F)");
private JMenuItem viewStatus_Bar = new JMenuItem("状态栏(S)");
private JMenuItem helpHelp_Topics = new JMenuItem("帮助主题(H)");
private JMenuItem helpAbout = new JMenuItem("关于记事本(A)");
private TextArea ta= new TextArea(10,20);
public NotePad(){
super("记事本");
JMenu file = new JMenu("文件(F)");
JMenu edit = new JMenu("编辑(E)");
JMenu format = new JMenu("格式(O)");
JMenu view = new JMenu("查看(V)");
JMenu help = new JMenu("帮助(H)");
file.add(fileNew);file.add(fileOpen);file.add(fileSave);file.add(fileSave_As);
file.add(filePage_Setup);file.add(filePrint);file.add(fileExit);
edit.add(editRevocation);edit.add(editShear);edit.add(editCopy);
edit.add(editPaste);edit.add(editDelete);edit.add(editFind);edit.add(editFind_Next);
edit.add(editReplacement);edit.add(editGo);edit.add(editSelet);edit.add(editTime_Date);
format.add(formatWrap);format.add(formatFonts);
view.add(viewStatus_Bar);
help.add(helpHelp_Topics);help.add(helpAbout);
add(ta);
JMenuBar bar = new JMenuBar();
bar.add(file);
bar.add(edit);
bar.add(format);
bar.add(view);
bar.add(help);
setJMenuBar(bar);
fileExit.addActionListener(this);
fileOpen.addActionListener(this);
pack();
setSize(400,400);
setVisible(true);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
}
});
}
public void readFile(String file){
ta.setText("");
try{
BufferedReader in = new BufferedReader(new FileReader(file));
String line;
while ((line = in.readLine())!= null)
ta.append(line + "\n");
in.close();
ta.setCaretPosition(0);
}catch(IOException ioe){
System.err.println(ioe);
}
}
public static void main(String[] args){
NotePad np = new NotePad();
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource() == fileExit)
System.exit(0);
else if(ae.getSource() == fileOpen){FileDialog fd = new FileDialog(this,"请选择要打开的文件",FileDialog.LOAD);
fd.setVisible(true);
if(fd.getFile() != null){
File file = new File(fd.getDirectory() + fd.getFile());
if(file.exists())
readFile(file.toString());
else
ta.setText("File name: " + file + " invalid.");
}
fd.dispose();
}}
}这个程序为什么菜单的下拉菜单打不开啊!
把add(ta);这句注释掉就能看到下拉菜单了,但是就没文本区域了
这在其它电脑上运行好想有用的,但到我自己电脑上就没用 了,这是怎么回事啊!
在JCreator中和在命令提示符中运行都会出现这问题啊!
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
public class NotePad extends JFrame implements ActionListener{
private JMenuItem fileNew = new JMenuItem("新建(N) Ctrl+N");
private JMenuItem fileOpen = new JMenuItem("打开(O) Ctrl+O");
private JMenuItem fileSave = new JMenuItem("保存(S) Ctrl+S");
private JMenuItem fileSave_As = new JMenuItem("另存为(A)");
private JMenuItem filePage_Setup = new JMenuItem("页面设置(U)");
private JMenuItem filePrint = new JMenuItem("打印(P) Ctrl+P");
private JMenuItem fileExit= new JMenuItem("退出(X)");
private JMenuItem editRevocation = new JMenuItem("撤销(U) Ctrl+Z");
private JMenuItem editShear = new JMenuItem("剪切(T) Ctrl+X");
private JMenuItem editCopy = new JMenuItem("复制(C) Ctrl+C");
private JMenuItem editPaste = new JMenuItem("粘贴(P) Ctrl+P");
private JMenuItem editDelete = new JMenuItem("删除(Del) Del");
private JMenuItem editFind = new JMenuItem("查找(F) Ctrl+F");
private JMenuItem editFind_Next = new JMenuItem("查找下一个(N) F3");
private JMenuItem editReplacement = new JMenuItem("替换(R) Ctrl+H");
private JMenuItem editGo = new JMenuItem("转到(G) Ctrl+G");
private JMenuItem editSelet = new JMenuItem("全选(A) Ctrl+A");
private JMenuItem editTime_Date = new JMenuItem("时间/日期(D) F5");
private JMenuItem formatWrap = new JMenuItem("自动换行(W)");
private JMenuItem formatFonts = new JMenuItem("字体(F)");
private JMenuItem viewStatus_Bar = new JMenuItem("状态栏(S)");
private JMenuItem helpHelp_Topics = new JMenuItem("帮助主题(H)");
private JMenuItem helpAbout = new JMenuItem("关于记事本(A)");
private TextArea ta= new TextArea(10,20);
public NotePad(){
super("记事本");
JMenu file = new JMenu("文件(F)");
JMenu edit = new JMenu("编辑(E)");
JMenu format = new JMenu("格式(O)");
JMenu view = new JMenu("查看(V)");
JMenu help = new JMenu("帮助(H)");
file.add(fileNew);file.add(fileOpen);file.add(fileSave);file.add(fileSave_As);
file.add(filePage_Setup);file.add(filePrint);file.add(fileExit);
edit.add(editRevocation);edit.add(editShear);edit.add(editCopy);
edit.add(editPaste);edit.add(editDelete);edit.add(editFind);edit.add(editFind_Next);
edit.add(editReplacement);edit.add(editGo);edit.add(editSelet);edit.add(editTime_Date);
format.add(formatWrap);format.add(formatFonts);
view.add(viewStatus_Bar);
help.add(helpHelp_Topics);help.add(helpAbout);
add(ta);
JMenuBar bar = new JMenuBar();
bar.add(file);
bar.add(edit);
bar.add(format);
bar.add(view);
bar.add(help);
setJMenuBar(bar);
fileExit.addActionListener(this);
fileOpen.addActionListener(this);
pack();
setSize(400,400);
setVisible(true);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent we){
System.exit(0);
}
});
}
public void readFile(String file){
ta.setText("");
try{
BufferedReader in = new BufferedReader(new FileReader(file));
String line;
while ((line = in.readLine())!= null)
ta.append(line + "\n");
in.close();
ta.setCaretPosition(0);
}catch(IOException ioe){
System.err.println(ioe);
}
}
public static void main(String[] args){
NotePad np = new NotePad();
}
public void actionPerformed(ActionEvent ae){
if(ae.getSource() == fileExit)
System.exit(0);
else if(ae.getSource() == fileOpen){FileDialog fd = new FileDialog(this,"请选择要打开的文件",FileDialog.LOAD);
fd.setVisible(true);
if(fd.getFile() != null){
File file = new File(fd.getDirectory() + fd.getFile());
if(file.exists())
readFile(file.toString());
else
ta.setText("File name: " + file + " invalid.");
}
fd.dispose();
}}
}这个程序为什么菜单的下拉菜单打不开啊!
把add(ta);这句注释掉就能看到下拉菜单了,但是就没文本区域了
这在其它电脑上运行好想有用的,但到我自己电脑上就没用 了,这是怎么回事啊!
在JCreator中和在命令提示符中运行都会出现这问题啊!
解决方案 »
- 请教聊天程序的思路
- 位移问题?
- 如何判断xml里是否有某个结点?
- james启动报错,说这个类找不到 :com.microsoft.jdbc.sqlserver.SQLServerDriver。请问应该如何解决?
- 请各位告诉我一些有关io的电子书
- 可恶的jbuilder7,是不是出问题了?帮帮我啊,有分相送!
- 请问JAVA中怎样去掉字符串后面的空格,谢谢!!!
- SmartUpload不能上传中文文件名的文件是怎么回事?
- 提一个低级问题:JB中如何定位控件?
- 在eclipse中plugin里建立了rest的web service却无法工作?
- 关于线程的一个问题(新手)
- 开发一个工具类,该工具类提供一个eval方法,实现JavaScript中eval的函数的功能:
不是用:private TextArea ta= new TextArea(10,20);
而要用:private JTextArea ta = new JTextArea(10, 20);
呵呵......
这东西好久都没弄了....
jdk/jre 版本一样吗?从6u12开始有限的支持混用AWT和Swing组件。