我想问为什么下面那程序的text没有滚动条的!
谢谢~~import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Frame1 extends JFrame {
JPanel contentPane;
GridLayout gridLayout1 = new GridLayout();
JMenuBar jMenuBar1 = new JMenuBar();
JMenu jMenu1 = new JMenu();
JMenu jMenu2 = new JMenu();
JMenuItem jMenuItem1 = new JMenuItem();
JMenuItem j1 = new JMenuItem();
JMenuItem jMenuItem3 = new JMenuItem();
JMenuItem jMenuItem4 = new JMenuItem();
TextArea t1 = new TextArea(); public Frame1() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(gridLayout1);
contentPane.add(t1);
this.setJMenuBar(jMenuBar1);
setSize(new Dimension(400, 300));
setTitle("编辑器");
jMenu1.setText("文件");
jMenu2.setText("编辑");
j1.setText("打开");
j1.addActionListener(new Frame1_jMenuItem2_actionAdapter(this));
jMenuItem1.setText("退出");
jMenuItem1.addActionListener(new Frame1_jMenuItem1_actionAdapter(this));
jMenuItem4.setText("字体");
jMenuItem3.setText("颜色");
jMenuBar1.add(jMenu1);
jMenuBar1.add(jMenu2);
jMenu1.add(j1);
jMenu1.add(jMenuItem1);
jMenu2.add(jMenuItem4);
jMenu2.add(jMenuItem3);
} public void jMenuItem1_actionPerformed(ActionEvent e) {
System.exit(0);
} public void jMenuItem2_actionPerformed(ActionEvent e) {
t1.setText(null);
FileDialog fd=new FileDialog(this, "打开文件");
fd.setVisible(true);
String s1=fd.getDirectory()+fd.getFile();
try
{
FileReader tt=new FileReader(s1);
BufferedReader yy=new BufferedReader(tt);
String s2=yy.readLine();
while(s2!=null)
{ t1.setText(t1.getText()+s2+"\n");
s2=yy.readLine();
}
tt.close();
yy.close();
}
catch(IOException yu)
{ } }
}
class Frame1_jMenuItem2_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jMenuItem2_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem2_actionPerformed(e);
}
}class Frame1_jMenuItem1_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jMenuItem1_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem1_actionPerformed(e);
}
}
原帖来自于网易社区:http://club.163.com/viewArticleByWWW.m?boardId=java&articleId=java_112fbdbfc9504be_0
谢谢~~import java.io.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Frame1 extends JFrame {
JPanel contentPane;
GridLayout gridLayout1 = new GridLayout();
JMenuBar jMenuBar1 = new JMenuBar();
JMenu jMenu1 = new JMenu();
JMenu jMenu2 = new JMenu();
JMenuItem jMenuItem1 = new JMenuItem();
JMenuItem j1 = new JMenuItem();
JMenuItem jMenuItem3 = new JMenuItem();
JMenuItem jMenuItem4 = new JMenuItem();
TextArea t1 = new TextArea(); public Frame1() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
jbInit();
} catch (Exception exception) {
exception.printStackTrace();
}
}
private void jbInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(gridLayout1);
contentPane.add(t1);
this.setJMenuBar(jMenuBar1);
setSize(new Dimension(400, 300));
setTitle("编辑器");
jMenu1.setText("文件");
jMenu2.setText("编辑");
j1.setText("打开");
j1.addActionListener(new Frame1_jMenuItem2_actionAdapter(this));
jMenuItem1.setText("退出");
jMenuItem1.addActionListener(new Frame1_jMenuItem1_actionAdapter(this));
jMenuItem4.setText("字体");
jMenuItem3.setText("颜色");
jMenuBar1.add(jMenu1);
jMenuBar1.add(jMenu2);
jMenu1.add(j1);
jMenu1.add(jMenuItem1);
jMenu2.add(jMenuItem4);
jMenu2.add(jMenuItem3);
} public void jMenuItem1_actionPerformed(ActionEvent e) {
System.exit(0);
} public void jMenuItem2_actionPerformed(ActionEvent e) {
t1.setText(null);
FileDialog fd=new FileDialog(this, "打开文件");
fd.setVisible(true);
String s1=fd.getDirectory()+fd.getFile();
try
{
FileReader tt=new FileReader(s1);
BufferedReader yy=new BufferedReader(tt);
String s2=yy.readLine();
while(s2!=null)
{ t1.setText(t1.getText()+s2+"\n");
s2=yy.readLine();
}
tt.close();
yy.close();
}
catch(IOException yu)
{ } }
}
class Frame1_jMenuItem2_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jMenuItem2_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem2_actionPerformed(e);
}
}class Frame1_jMenuItem1_actionAdapter implements ActionListener {
private Frame1 adaptee;
Frame1_jMenuItem1_actionAdapter(Frame1 adaptee) {
this.adaptee = adaptee;
} public void actionPerformed(ActionEvent e) {
adaptee.jMenuItem1_actionPerformed(e);
}
}
原帖来自于网易社区:http://club.163.com/viewArticleByWWW.m?boardId=java&articleId=java_112fbdbfc9504be_0
JScrollPane tools = new JScrollPane(t1);
contentPane.add(t1); // 改为 contentPane.add(tools);
就可以了