将JTextArea加入JScrollPane中,原来下面的文本区域变成无法编辑的类似Label的东西,咋回事?附源码
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;public class NoteBook extends JFrame{
private JTextArea ta;
private JMenuBar mb;
private JMenu file,form;
private JMenuItem newfile,open,save,saveas,exit;
//private FileDialog fd;
private JScrollPane jsp;
private JFileChooser jfc;
//FileInputStream fis;
//private JTextPane jtp;
public NoteBook(){
super("记事本");
Container c = getContentPane();
//c.setLayout(new FlowLayout());
jfc = new JFileChooser();
//jtp = new JTextPane();
mb = new JMenuBar();
file = new JMenu("文件");
form = new JMenu("格式");
newfile = new JMenuItem("新建");
open = new JMenuItem("打开");
save = new JMenuItem("保存");
saveas = new JMenuItem("另存为");
exit = new JMenuItem("退出");
newfile.addActionListener(new Handler1());
open.addActionListener(new Handler1());
save.addActionListener(new Handler1());
saveas.addActionListener(new Handler1());
exit.addActionListener(new Handler1());
mb.add(file);
mb.add(form);
file.add(newfile);
file.add(open);
file.add(save);
file.add(saveas);
file.add(exit);
setJMenuBar(mb);
ta = new JTextArea();
//ta.setColumns(20);
ta.setLineWrap(true);
add(ta);
jsp = new JScrollPane(ta);
jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
setSize(800,600);
setVisible(true);
}
public static void main(String args[]){
NoteBook nb = new NoteBook();
}
class Handler1 implements ActionListener{
public void actionPerformed(ActionEvent e){
//JMenuItem mi = (JMenuItem)e.getSource();
//if(e.getSource() == newfile)
/*if(e.getSource() == open){
int state = chooser.showOpenDialog(null);
File file = chooser.getSelectedFile();
if(File != null && state == JFileChooser.APPROVE_OPTION){
fis = new FileInputStream(file);
jtp.read(fis);
}
}*/
//if(e.getSource() == save)
//if(e.getSource() == saveas)
if(e.getSource() == exit)
System.exit(0);
}
}
}
import javax.swing.*;
import java.awt.event.*;
import java.awt.*;public class NoteBook extends JFrame{
private JTextArea ta;
private JMenuBar mb;
private JMenu file,form;
private JMenuItem newfile,open,save,saveas,exit;
//private FileDialog fd;
private JScrollPane jsp;
private JFileChooser jfc;
//FileInputStream fis;
//private JTextPane jtp;
public NoteBook(){
super("记事本");
Container c = getContentPane();
//c.setLayout(new FlowLayout());
jfc = new JFileChooser();
//jtp = new JTextPane();
mb = new JMenuBar();
file = new JMenu("文件");
form = new JMenu("格式");
newfile = new JMenuItem("新建");
open = new JMenuItem("打开");
save = new JMenuItem("保存");
saveas = new JMenuItem("另存为");
exit = new JMenuItem("退出");
newfile.addActionListener(new Handler1());
open.addActionListener(new Handler1());
save.addActionListener(new Handler1());
saveas.addActionListener(new Handler1());
exit.addActionListener(new Handler1());
mb.add(file);
mb.add(form);
file.add(newfile);
file.add(open);
file.add(save);
file.add(saveas);
file.add(exit);
setJMenuBar(mb);
ta = new JTextArea();
//ta.setColumns(20);
ta.setLineWrap(true);
add(ta);
jsp = new JScrollPane(ta);
jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
setSize(800,600);
setVisible(true);
}
public static void main(String args[]){
NoteBook nb = new NoteBook();
}
class Handler1 implements ActionListener{
public void actionPerformed(ActionEvent e){
//JMenuItem mi = (JMenuItem)e.getSource();
//if(e.getSource() == newfile)
/*if(e.getSource() == open){
int state = chooser.showOpenDialog(null);
File file = chooser.getSelectedFile();
if(File != null && state == JFileChooser.APPROVE_OPTION){
fis = new FileInputStream(file);
jtp.read(fis);
}
}*/
//if(e.getSource() == save)
//if(e.getSource() == saveas)
if(e.getSource() == exit)
System.exit(0);
}
}
}
解决方案 »
- Netbeans生成的这个 回车时触发多次 而且第按一次回车都会比上次多触发一次
- 下拉框联动的问题,急啊!
- 急求,请各位帮忙!
- jni应用中如何在C程序里返回一个自定义的类型
- 希望各位前辈多多指教,小女子有理了
- 这个问提捆扰了我很久了啊~~(在线等待中,急啊掉眉毛)
- 这么源代码不知道怎么测试它,args参数是干嘛用的
- 如何在RMI中传递一个对象?
- 一个小问题,有结果立刻60分送上。。。。。。。。。。。。
- 救命了!!!!!!!!!!!!!那位老大帮帮忙啊!!!!!!我是在是有点搞不懂了,其实很简单的问题,愁啊!!!只能有42分,不够我再加100分,一定要帮帮我!
- servlet 编码过滤器问题
- 如何在java中配置主副DNS?
2.又把ta放到了JScrollPane中
3.而JScrollPane没有放到任何容器中,也就是说你的JFrame中没有任何东西(没有ta)。解决办法:
在
jsp.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED);
后面加上
add(jsp);
就搞定了。