类层次结构图:
java.lang.Object
--java.awt.Component
--java.awt.Container
--javax.swing.JComponent
--javax.swing.JScrollPane
JScrollPane构造函数:
JScrollPane():
建立一个空的JScrollPane对象。
JScrollPane(Component view):
建立一个新的JScrollPane对象,当组件内容大于显示区域时会自动产生滚动轴。
JScrollPane(Component view,int vsbPolicy,int hsbPllicy):
建立一新的JScrollPane对象,里面含有显示组件,并设置滚动轴出现时机。
JScrollPane(int vsbPolicy,int hsbPolicy):
建立一个新的JScrollPane对象,里面不含有显示组件,但设置滚动轴出现时机。
JScrollPane或利用下面这些参数来设置滚动轴的出现的时机,这些参数是定义在ScrollPaneConstants interface中,而JScrollPane类实现此界面,因此也就能使用这些参数:
HORIZONTAL_SCROLLBAR_ALAWAYS: 显示水平滚动轴。
HORIZONTAL_SCROLLBAR_AS_NEEDED:当组件内容水平区域大于显示区域时出现水平滚动轴。
HORIZONTAL_SCROLLBAR_NEVER: 不显示水平滚动轴。
VERTICAL_SCROLLBAR_ALWAYS: 显示垂直滚动轴。
VERTICAL_SCROLLBAR_AS_NEEDED: 当组件内容垂直区域大于显示区域时出现垂直滚动轴。
VERTICAL_SCROLLBAR_NEVER: 不显示垂直滚动轴。
接下来我们再看看JScrollPane还有哪些常用的功能。JScrollPane除了可让你滚动轴外,它还可以设置表头(Header)名称、边角
(Corner)图案与ScrollPane外框。我们修改上面的例子。使JScrollPane更具有变化:
JScrollpane2.JAVA
java.lang.Object
--java.awt.Component
--java.awt.Container
--javax.swing.JComponent
--javax.swing.JScrollPane
JScrollPane构造函数:
JScrollPane():
建立一个空的JScrollPane对象。
JScrollPane(Component view):
建立一个新的JScrollPane对象,当组件内容大于显示区域时会自动产生滚动轴。
JScrollPane(Component view,int vsbPolicy,int hsbPllicy):
建立一新的JScrollPane对象,里面含有显示组件,并设置滚动轴出现时机。
JScrollPane(int vsbPolicy,int hsbPolicy):
建立一个新的JScrollPane对象,里面不含有显示组件,但设置滚动轴出现时机。
JScrollPane或利用下面这些参数来设置滚动轴的出现的时机,这些参数是定义在ScrollPaneConstants interface中,而JScrollPane类实现此界面,因此也就能使用这些参数:
HORIZONTAL_SCROLLBAR_ALAWAYS: 显示水平滚动轴。
HORIZONTAL_SCROLLBAR_AS_NEEDED:当组件内容水平区域大于显示区域时出现水平滚动轴。
HORIZONTAL_SCROLLBAR_NEVER: 不显示水平滚动轴。
VERTICAL_SCROLLBAR_ALWAYS: 显示垂直滚动轴。
VERTICAL_SCROLLBAR_AS_NEEDED: 当组件内容垂直区域大于显示区域时出现垂直滚动轴。
VERTICAL_SCROLLBAR_NEVER: 不显示垂直滚动轴。
范例:JScrollpane1.java import java.awt.*; import java.awt.event.*; import javax.swing.*; public class JScrollpane1 implements ActionListener{ JScrollPane scrollPane; public JScrollpane1(){ JFrame f=new JFrame("JScrollpane1"); Container contentPane=f.getContentPane(); JLabel label1=new JLabel(new ImageIcon(".\\icons\\flower.jpg")); JPanel panel1=new JPanel(); panel1.add(label1); /*新增一个JScrollPane对象,并将panel1放入JScrollPane中,若pane1的组件大小在于窗口大小 *大于窗口大小则会自动显示出ScrollBar. */ scrollPane=new JScrollPane(panel1); JPanel panel2=new JPanel(new GridLayout(3,1)); JButton b=new JButton("显示水平滚动轴"); b.addActionListener(this); panel2.add(b); b=new JButton("不要显示水平滚动轴"); b.addActionListener(this); panel2.add(b); b=new JButton("适时显示水平滚动轴"); b.addActionListener(this); panel2.add(b); contentPane.add(panel2,BorderLayout.WEST); contentPane.add(scrollPane,BorderLayout.CENTER); f.setSize(new Dimension(350,220)); f.show(); f.addWindowListener(new WindowAdapter(){ public void WindowClosing(WindowEvent e){ System.exit(0); } }); } /*实现ActionListener界面,当用户按下"显示水平滚动轴"按钮时,则设置水平滚动轴参数为 *JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS,若用户按下"不要显示水平滚动轴""按钮时,则设置 *水平滚动轴参数为JScrollPane.HORIZONTAL_SCROLLBAR_NEVER,若用户按下"适时显示水平滚动轴" *时,则设置水平滚动轴参数为HORIZONTAL_SCROLLBAR_AS_NEEDED. */ public void actionPerformed(ActionEvent e){ if(e.getActionCommand().equals("显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); if(e.getActionCommand().equals("不要显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); if(e.getActionCommand().equals("适时显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); scrollPane.revalidate();//重新显示JScrollPane形状。 } public static void main(String[] args){ new JScrollpane1(); } }
接下来我们再看看JScrollPane还有哪些常用的功能。JScrollPane除了可让你滚动轴外,它还可以设置表头(Header)名称、边角
(Corner)图案与ScrollPane外框。我们修改上面的例子。使JScrollPane更具有变化:
JScrollpane2.JAVA
import java.awt.*; import java.awt.event.*; import javax.swing.*; import javax.swing.border.*; public class JScrollpane2 implements ActionListener{ JScrollPane scrollPane; public JScrollpane2(){ JFrame f=new JFrame("JScrollPaneDemo"); Container contentPane=f.getContentPane(); JLabel label1=new JLabel(new ImageIcon(".\\icons\\flower.jpg")); JPanel panel1=new JPanel(); panel1.add(label1); scrollPane=new JScrollPane(); /*设置窗口显示组件为panel1 */ scrollPane.setViewportView(panel1); /*设置水平与垂直表头 */ scrollPane.setColumnHeaderView(new JLabel("水平表头")); scrollPane.setRowHeaderView(new JLabel("垂直表头")); /*设置scrollPane的边框凹陷立体边框。边框(Border)部份我们将在以后介绍。 */ scrollPane.setViewportBorder(BorderFactory.createBevelBorder(BevelBorder.LOWERED)); /*设置scrollPane的边角图案,由于JScrollPane为矩形形状,因此就有4个位置来摆放边角(Corner) *组件,这4个地方分别是左上、左下、右上、右下,对应的参数分别如下: *JScrollPane.UPPER_LEFT_CORNER *JScrollPane.LOWER_LEFT_CORNER *JScrollPane.UPPER_RIGHT_CORNER *JScrollPane.LOWER_RIGHT_CORNER */ scrollPane.setCorner(JScrollPane.UPPER_LEFT_CORNER,new JLabel(new ImageIcon(".\\icons\\glass.jpg"))); scrollPane.setCorner(JScrollPane.UPPER_RIGHT_CORNER,new JLabel(new ImageIcon(".\\icons\\glass.jpg"))); JPanel panel2=new JPanel(new GridLayout(3,1)); JButton b=new JButton("显示水平滚动轴"); b.addActionListener(this); panel2.add(b); b=new JButton("不要显示水平滚动轴"); b.addActionListener(this); panel2.add(b); b=new JButton("适时显示水平滚动轴"); b.addActionListener(this); panel2.add(b); contentPane.add(panel2,BorderLayout.WEST); contentPane.add(scrollPane,BorderLayout.CENTER); f.setSize(new Dimension(350,220)); f.show(); f.addWindowListener(new WindowAdapter(){ public void windowClosing(WindowEvent e){ System.exit(0); } } ); } public void actionPerformed(ActionEvent e){ if(e.getActionCommand().equals("显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS); if(e.getActionCommand().equals("不要显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_NEVER); if(e.getActionCommand().equals("适时显示水平滚动轴")) scrollPane.setHorizontalScrollBarPolicy(JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED); scrollPane.revalidate();//重新显示JScrollPane形状。 } public static void main(String[] args){ new JScrollpane2(); } }
发表评论
-
java.lang.UnsatisfiedLinkError: no j3dcore-ogl-chk in java.library.path
2011-08-19 17:01 2453Exception in thread "main& ... -
打jar包
2011-05-26 18:35 999打成jar包: 1、没有其他类库jar文件和插件 ... -
Java实现通用线程池
2011-05-05 23:11 1025线程池通俗的描述就是预先创建若干空闲线程,等到需要用多线程去处 ... -
Java tutorial
2011-05-05 21:49 973http://download.oracle.com/java ... -
java.awt.component.repaint()
2011-05-05 18:57 1006repaint public void repaint()R ... -
validate
2011-05-05 17:21 705validate public void validate( ... -
Class.forName和New的比较
2011-04-26 14:46 669在初始化一个类,生成一个实例的时候,newInstance() ... -
Responding to Window-Closing Events
2011-04-26 03:00 750By default, when the user close ... -
Map、Collection、List接口的总结
2011-04-26 02:52 790Map接口: | + -- ... -
复杂的GridBagLayout
2011-02-07 16:06 1005今天终于耐着性子弄懂了GridBagLayout是怎么使用的。 ... -
swing中的布局管理器
2011-02-07 15:42 14144.CardLayout CardL ... -
swing中的最上层组件
2011-02-07 15:05 2712swing中几乎所有组件都是从JComponent衍生而来,也 ... -
Java swing 组件分层介绍:JRootPane,GlassPane,LayeredPane
2011-02-06 17:01 2998什么是Swing,什么又是ligh ... -
JTextArea操作
2011-01-11 18:03 1201JTextArea操作: (1)在JTextArea插入 ... -
double到int转换
2010-12-16 23:28 815double到int转换,有“截断”误差的。 可以通过+0.5 ... -
各种排序算法java实现
2010-11-25 15:20 554package org.rut.util.algorith ... -
Java中使用BigDecimal进行浮点数高精度计算
2010-11-25 15:18 762转自:http://chongtianpig.netbei.c ... -
利用java内存映射文件机制实现CRC循环冗余校验
2010-11-19 13:52 1055import java.nio.MappedByteBuf ... -
java中进行二进制,八进制,十六进制,十进制间进行相互转换
2010-11-19 13:48 625十进制转成十六进制: Integer.toHexString ... -
JTextField JTextArea 区分
2010-11-19 01:14 1477一、单行文本输入框(JTextField) 在许多情况下 ...
相关推荐
jScrollPane javascript模拟滚动条
JScrollPane 滚动条 例子
在JTextArea下添加滚动条以及JTextArea与TextArea的区别
前端项目-jScrollPane,jscrollpane-带有jquery和css的跨浏览器可样式滚动条
这是一个使用自定义样式(在这种情况下看起来像OSX的)的一个JScrollPane的滚动页面的全部内容的例子。
jScrollPane, 漂亮,可以定制,跨浏览器 替换滚动条 jScrollPane --跨浏览器 自定义滚动条jScrollPane是一个可以用于替换浏览器滚动条缺省功能( 在具有溢出的元素上)的 jQuery插件: auto ) 具有一个可以使用CSS轻松...
jScrollPane这个jQuery插件可以让你通过简单的CSS设置就能够替换所有分块元素在浏览器中默认的垂直滚动条样式。
jquery jscrollpane.js滚动窗口微信聊天对话框
国外开源的代码,可以改变IE或者FIREFOX中的滚动条.在工作中解决了不少我的问题,共享出来:)
用JS特製個性化的滾動條。 網頁設計中系統自帶的滾動條常常破壞整個設計格局、風格。
/* 1、showArrows:是否显示滚动箭头,模式是false; 2、maintainPosition:当滚动区重新初始化后,是否保持滚动条的原有位置,默认是true; 3、stickToBottom:当maintainPosition设置为true,且滚动区域到达...
JScrollPane jScrollPane = new JScrollPane(jTree); jScrollPane.setBounds(10, 10, 200, 200); jScrollPane.getVerticalScrollBar().setUI(new ScrollBarUIEx (JScrollBar.VERTICAL)); jScrollPane....
jScrollPane 滚动条 jQuery 滚动条
jScrollPane is a cross-browser jQuery plugin by Kelvin Luck which converts a browser's default scrollbars (on elements with a relevant overflow property) into an ...一个可以随意改变HTML滚动条样式的jQuery...
JScrollPane是Swing库提供的一个用于在需要滚动的区域中显示内容的组件。它通常与其他组件(如文本区域、表格、列表等)一起使用,以便在内容溢出时提供滚动功能。
JScrollPane设置透明,swing图形界面
在SWING中嵌套使用JScrollPane时,会出现诸多显示问题,如内层JScrollPane的滚动条显示不正常、框架缩放时,内层JScrollPane放大后无法自适应缩小等。如果需要显示内层的滚动条,则需要外层Scroll组件的view视图组件...
jScrollPane-跨浏览器自定义滚动条 jScrollPane是一个插件,它允许您使用HTML结构替换浏览器的默认滚动条(在具有溢出的元素上:auto ),该结构可以使用CSS轻松换肤。 要查看实际使用的jScrollPane示例,请访问。 ...
这个可以用于做项目表格时用到,因为一个大型的项目所收藏的东西自然会很多故可以用JScrollPane
jScrollPane想必大家都不陌生吧它就是所谓的jquery滚动条插件,下面为大家介绍下其具体的使用,感兴趣的朋友不要错过