当前位置: 代码迷 >> Java相关 >> 打开文件对话框里的文件怎么在TextArea中显示不出来
  详细解决方案

打开文件对话框里的文件怎么在TextArea中显示不出来

热度:117   发布时间:2010-12-23 23:12:33.0
打开文件对话框里的文件怎么在TextArea中显示不出来
import java.awt.*;
import java.awt.event.*;
import java.io.*;

class HisFrame extends Frame
{
    public static void main(String[] args)
    {
      final Frame f=new Frame("His Frame");
      f.setSize(600,400);
      f.setLocation(100,100);
      f.addWindowListener(new WindowAdapter()
      {
           public void windowClosing(WindowEvent e)
       {
           System.exit(0);
       }
      });
      
      final TextArea ta=new TextArea();
      f.add(ta);
      MenuBar mb=new MenuBar();
      Menu m=new Menu("文件(F)");
      
      MenuItem mi1=new MenuItem("新建");
      MenuItem mi2=new MenuItem("打开");
      mi2.addActionListener(new ActionListener()
      {
          public void actionPerformed(ActionEvent e)
          {
              FileDialog fd=new FileDialog(f,"打开文件",FileDialog.LOAD);
              String strFile=fd.getDirectory()+fd.getFile();
              if(strFile!=null)
              {
                  try
                  {
                    FileInputStream fis=new FileInputStream(strFile);
                    byte[] buf=new byte[10*1024];
                    int len=fis.read(buf);
                    ta.append(new String(buf,0,len));
                    fis.close();
                  }
                  catch(Exception ex)
                  {
                      ex.printStackTrace();
                  }
              }
              fd.setVisible(true);
          }
         
      });
      m.add(mi1);
      m.add(mi2);
     
      mb.add(m);
     
     f.setMenuBar(mb);
     f.setVisible(true);
  }
}

打开文件对话框里的文件怎么在TextArea中显示不出来?这是什么问题。怎么改啊。
还有fd.setVisible(true)改为fd.show()怎么提示找不到符号;
搜索更多相关的解决方案: 对话框  

----------------解决方案--------------------------------------------------------
请求高手吧你
----------------解决方案--------------------------------------------------------
高手帮忙啊!急
----------------解决方案--------------------------------------------------------
strFile 的值是“NULLNULL”
----------------解决方案--------------------------------------------------------
楼主,你的是记事本程序吗?

本论坛有类似的原码:
传送门
http://bbs.bccn.net/viewthread.php?tid=280162&highlight=%BC%C7%CA%C2%B1%BE
----------------解决方案--------------------------------------------------------
错误找出来了:
import java.awt.*;
import java.awt.event.*;
import java.io.*;

class HisFrame extends Frame
{
    public static void main(String[] args)
    {
      final Frame f=new Frame("His Frame");
      f.setSize(600,400);
      f.setLocation(100,100);
      f.addWindowListener(new WindowAdapter()
      {
           public void windowClosing(WindowEvent e)
       {
           System.exit(0);
       }
      });
      
      final TextArea ta=new TextArea();
      f.add(ta);
      MenuBar mb=new MenuBar();
      Menu m=new Menu("文件(F)");
      
      MenuItem mi1=new MenuItem("新建");
      MenuItem mi2=new MenuItem("打开");
      mi2.addActionListener(new ActionListener()
      {
          public void actionPerformed(ActionEvent e)
          {
              FileDialog fd=new FileDialog(f,"打开文件",FileDialog.LOAD);
              fd.setVisible(true);  //应放在这里
              String strFile=fd.getDirectory()+fd.getFile();
              if(strFile!=null)
              {
                  try
                  {
                    FileInputStream fis=new FileInputStream(strFile);
                    byte[] buf=new byte[10*1024];
                    int len=fis.read(buf);
                    ta.append(new String(buf,0,len));
                    fis.close();
                  }
                  catch(Exception ex)
                  {
                      ex.printStackTrace();
                  }
              }
              //fd.setVisible(true);//该句不应该放在这里
          }
         
      });
      m.add(mi1);
      m.add(mi2);
     
      mb.add(m);
     
     f.setMenuBar(mb);
     f.setVisible(true);
  }
}

----------------解决方案--------------------------------------------------------
  相关解决方案