import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
class Note implements ActionListener
{
JFrame jf;
JMenuBar menubar;
JMenu file,edit,search,about_me;
JMenuItem menuitem;
JFileChooser jfc;
JTextArea area=new JTextArea();
JScrollPane jp;
Note(String k)
{
jfc=new JFileChooser("e:\\java");
jf=new JFrame(k);
menubar=new JMenuBar();
file=new JMenu("File");
file.setMnemonic(KeyEvent.VK_F);
menuitem=new JMenuItem("New");
menuitem.setActionCommand("New");
menuitem.addActionListener(this);
menuitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,ActionEvent.CTRL_MASK));
file.add(menuitem);
menuitem=new JMenuItem("Open");
menuitem.setActionCommand("open");
menuitem.addActionListener(this);
menuitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,ActionEvent.CTRL_MASK));
file.add(menuitem);
menuitem=new JMenuItem("Save");
menuitem.setActionCommand("save");
menuitem.addActionListener(this);
menuitem.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,ActionEvent.CTRL_MASK));
file.add(menuitem);
menuitem=new JMenuItem("Save as...");
menuitem.setActionCommand("save_as");
menuitem.addActionListener(this);
file.add(menuitem);
file.addSeparator();
menuitem=new JMenuItem("Exit");
menuitem.setActionCommand("exit");
menuitem.addActionListener(this);
file.add(menuitem);
jf.add(area);
jf.setVisible(true);
jf.setSize(400,400);
menubar.add(file);
//menubar.add(edit);
jf.setJMenuBar(menubar);
}
public void actionPerformed(ActionEvent e)
{
if(e.getActionCommand().equals("New"))
area.setText("NEw");
if(e.getActionCommand().equals("open"))
{
String m=open(jfc);
System.out.println(m);
try{
FileInputStream p=new FileInputStream(m);
int i=0;char k;String k1="";
while((i=p.read())!=-1)
{
k=(char)i;
k1=k1.valueOf(k);
area.append(k1);}
//System.out.println(k1);
p.close();
}
catch(Exception e1){
System.out.println(e1);
}
}
if(e.getActionCommand().equals("save"))
{
String m=save(jfc);
try{
FileWriter fw=new FileWriter(m,true);
String s=area.getText();
char ch[]=s.toCharArray();
for(int i=0;i<ch.length;i++)
fw.write(ch[i]);
fw.close();
}
catch(Exception e1)
{
System.out.println("Exception occurs"+e1);
}
}
if(e.getActionCommand().equals("save_as"))
area.setText("save_as");
if(e.getActionCommand().equals("exit"))
System.exit(0);
}
public static String open(JFileChooser jfc)
{
int x=jfc.showOpenDialog(null);
if(x==JFileChooser.APPROVE_OPTION)
{
File f=jfc.getSelectedFile();
String w=f.getPath();
char ch[]=w.toCharArray();
for(int i=0;i<ch.length;i++)
{
if(ch[i]==92)
ch[i]=47;
}
String w1=new String (ch);
return w1;
}
else return null;
}
public static String save(JFileChooser jfc)
{
int x=jfc.showSaveDialog(null);
if(x==JFileChooser.APPROVE_OPTION)
{
File f=jfc.getSelectedFile();
String w=f.getPath();
char ch[]=w.toCharArray();
for(int i=0;i<ch.length;i++)
{
if(ch[i]==92)
ch[i]=47;
}
String w1=new String (ch);
return w1;
}
else return null;
}
public static void main(String... s)
{
new Note("Ankit");
}
}
实际上,当我第一次在Scable上使用Scrollpane时。所以它完美地添加了,但这次不是。我为Jscrollpane创建了一个参数变量,当我创建一个这样的实例时,我给.... // jsp = new JScrollPane(area); 但没有任何反应。它似乎与布局有关。所以任何人都可以帮我解决这个问题。