JScrollPane的简单用法!
1。定义实例:JScrollPane jsp=new JScrollPane(某个继承自JPanel类的实例 pane);
2。设置初始大小:jsp.setPreferredSize(new Dimension(200,200)); 3。在适当的时候(已经判断出jsp容纳不下里面的内容时)重新设置大小:jsp.setPreferredSize(一个新的Dimension); 4。调用jsp.revalidate(); 5。调用jsp.repaint(); Tips: 有一个JScrollPane的成员函数是scrollRectToVisible(Rectangle rect);该成员函数能够使某一块rect在当前的滚动面板内可见,即滚动面板能够通过滚动来使得需要显示的区域(由rect界定出的那块区域)被显示。
1、在使用了JScrollPane的JTextArea中,当指定JTextArea大小后,如何使当一行的数据过长时,自动折行,而不是出现横滚动条;
2、在使用了JScrollPane的JTable中,如何指定JTable的宽度,当大于JScrollPane的显示区域时,自动显示横滚动条,而不是压缩JTable中的每一列的宽度。 可以参照java 图形核心卷2的介绍http://ecapital.myetang.com/swing/tutorial/s02/index.html 第一个问题: mport java.awt.*; import java.awt.event.*; import javax.swing.*; public class JTextArea2{ public static void main(String[] args){ JFrame f=new JFrame("JTextArea2"); Container contentPane=f.getContentPane(); contentPane.setLayout(new BorderLayout()); JPanel p1=new JPanel(); p1.setLayout(new GridLayout(1,1)); p1.setBorder(BorderFactory.createTitledBorder("构造TextArea-使用GridLayout,加ScrollBar")); JTextArea t1=new JTextArea(5,25); t1.setTabSize(10); t1.setFont(new Font("标楷体",Font.BOLD,16)); t1.setLineWrap(true);//激活自动换行功能 t1.setWrapStyleWord(true);//激活断行不断字功能 p1.add(new JScrollPane(t1));//将JTextArea放入JScrollPane中,这样就能利用滚动的效果看到输入超过JTextArea高度的 //文字. contentPane.add(p1); f.pack(); f.show(); f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } }); } } 其实在Document中你可以更灵活的控制 第二个问题,把JTable的AUTO_RESIZE_OFF 、在使用了JScrollPane的JTable中,如何指定JTable的宽度,当大于JScrollPane的显示区域时,自动显示横滚动条,而不是压缩JTable中的每一列的宽度 add the following line: table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF); |
JScrollPane的简单用法!
最新推荐文章于 2024-06-26 02:15:53 发布