大家帮忙写一个界面(swing). 用java的swing写一个简单的界面,要求用file类来提取本地的文件.弹出对话框用于选择本地电脑中的文件,选中该文件,并对该文件进行读写,并显示在textarea中.谢谢了!我刚做,对文件选取的时候的过滤做的不好,要求用2个jpanel,一个为菜单栏,一个用于显示图片,并一个用于显示文字信息. 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这里有个模拟的记事本 应该和你说的差不多把 主要就是对话框获取文件那块package AWT组建.文件对话框;import java.awt.*;import java.io.*;import java.awt.event.*;import javax.swing.JOptionPane;public class MainForm extends Frame implements ActionListener{ /** * @param args */ public static void main(String[] args) { // TODO Auto-generated method stub new MainForm(); } MenuItem open=new MenuItem("打开"); MenuItem save=new MenuItem("保存"); MenuItem exit=new MenuItem("退出"); TextArea t=new TextArea(); public MainForm() { super("记事本"); this.setBounds(200, 200, 800, 600); MenuBar menubar=new MenuBar(); Menu menu1=new Menu("文件"); menu1.setShortcut(new MenuShortcut(KeyEvent.VK_F)); Menu menu2=new Menu("编辑"); menu2.setShortcut(new MenuShortcut(KeyEvent.VK_E)); Menu menu3=new Menu("格式"); menu3.setShortcut(new MenuShortcut(KeyEvent.VK_O)); Menu menu4=new Menu("帮助"); menu4.setShortcut(new MenuShortcut(KeyEvent.VK_H)); open.addActionListener(this); save.addActionListener(this); exit.addActionListener(this); menu1.add(open); menu1.add(save); menu1.addSeparator(); menu1.add(exit); exit.setShortcut(new MenuShortcut(KeyEvent.VK_E)); this.add(t,BorderLayout.CENTER); menubar.add(menu1); menubar.add(menu2); menubar.add(menu3); menubar.add(menu4); this.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e) { System.exit(0); } }); this.setMenuBar(menubar); this.setVisible(true); } public void actionPerformed(ActionEvent e) { FileDialog file; if(e.getSource()==open) { file=new FileDialog(this,"打开文件",FileDialog.LOAD); file.setVisible(true); String filename=file.getDirectory()+"\\"+file.getFile(); try { FileReader fr=new FileReader(filename); BufferedReader br=new BufferedReader(fr); String s=""; t.setText(""); while((s=br.readLine())!=null) { t.append(s+"\n"); } br.close(); fr.close(); } catch (Exception e1) { // TODO Auto-generated catch block e1.printStackTrace(); } }else if(e.getSource()==save) { file=new FileDialog(this,"保存文件",FileDialog.SAVE); file.setVisible(true); String filename=file.getDirectory()+"\\"+file.getFile(); try { FileWriter fw=new FileWriter(filename); System.out.println(filename); fw.write(t.getText().toCharArray()); fw.close(); } catch (IOException e1) { // TODO Auto-generated catch block e1.printStackTrace(); } }else if(e.getSource()==exit) { int result=JOptionPane.showConfirmDialog(this, "您确认要退出吗", "提示", JOptionPane.YES_NO_OPTION); if(result==JOptionPane.YES_OPTION) { System.exit(0); } } }} 晕死。。代码在jcreator下可以运行通过,也有界面,在eclipse下却提示出错郁闷,不是第一次碰到这样的事了哪位高手解释下啊 装完jdk后,有一个demo目录,里面有好多实例,多看看很有帮助。 关于多次安装JDK的问题 如何用Properties类实现多名用户名登录? 求救:关于JTree的Ctrl+A事件 谁能告诉我在oracle中动态创建一个表 MyEclipse6.5中文乱码 问个计算机网络的问题 文件乱码求助 请大家推荐好的电脑应用习惯,或者好的软件? jsp+javabean+sql被它搞死了! 谁有Visual Age for Java 企业版3.5.3 Update 新手求助!与JDT相关 java调节windows音量大小
package AWT组建.文件对话框;
import java.awt.*;
import java.io.*;
import java.awt.event.*;import javax.swing.JOptionPane;
public class MainForm extends Frame implements ActionListener{ /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
new MainForm();
}
MenuItem open=new MenuItem("打开");
MenuItem save=new MenuItem("保存");
MenuItem exit=new MenuItem("退出");
TextArea t=new TextArea();
public MainForm()
{
super("记事本");
this.setBounds(200, 200, 800, 600);
MenuBar menubar=new MenuBar();
Menu menu1=new Menu("文件");
menu1.setShortcut(new MenuShortcut(KeyEvent.VK_F));
Menu menu2=new Menu("编辑");
menu2.setShortcut(new MenuShortcut(KeyEvent.VK_E));
Menu menu3=new Menu("格式");
menu3.setShortcut(new MenuShortcut(KeyEvent.VK_O));
Menu menu4=new Menu("帮助");
menu4.setShortcut(new MenuShortcut(KeyEvent.VK_H));
open.addActionListener(this);
save.addActionListener(this);
exit.addActionListener(this);
menu1.add(open);
menu1.add(save);
menu1.addSeparator();
menu1.add(exit);
exit.setShortcut(new MenuShortcut(KeyEvent.VK_E));
this.add(t,BorderLayout.CENTER);
menubar.add(menu1);
menubar.add(menu2);
menubar.add(menu3);
menubar.add(menu4);
this.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
this.setMenuBar(menubar);
this.setVisible(true);
}
public void actionPerformed(ActionEvent e)
{
FileDialog file;
if(e.getSource()==open)
{
file=new FileDialog(this,"打开文件",FileDialog.LOAD);
file.setVisible(true);
String filename=file.getDirectory()+"\\"+file.getFile();
try {
FileReader fr=new FileReader(filename);
BufferedReader br=new BufferedReader(fr);
String s="";
t.setText("");
while((s=br.readLine())!=null)
{
t.append(s+"\n");
}
br.close();
fr.close();
} catch (Exception e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}else if(e.getSource()==save)
{
file=new FileDialog(this,"保存文件",FileDialog.SAVE);
file.setVisible(true);
String filename=file.getDirectory()+"\\"+file.getFile();
try {
FileWriter fw=new FileWriter(filename);
System.out.println(filename);
fw.write(t.getText().toCharArray());
fw.close();
} catch (IOException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
}
}else if(e.getSource()==exit)
{
int result=JOptionPane.showConfirmDialog(this, "您确认要退出吗", "提示", JOptionPane.YES_NO_OPTION);
if(result==JOptionPane.YES_OPTION)
{
System.exit(0);
}
}
}}
郁闷,不是第一次碰到这样的事了哪位高手解释下啊