- 博客(11)
- 收藏
- 关注
原创 (JDialog)对话框实现数据交换
对话框分为模式对话框和无模式对话框。模式对话框就是在弹出对话框后,父组件阻塞直到完成对话框的操作,父组件被激活。无模式对话框就是对话框与父组件并行运行。 JDialog(Dialog owner, String title, boolean modal) 其中modal为true即为模式对话框,false为无模式对话框。只要将要在对话框中显示的内容(可以
2009-08-23 19:55:00 6462
转载 TableCellEditor焦点离开数据丢失问题
http://sailing8036.spaces.live.com/blog/cns!69d05dfd4294f487!513.entry?sa=48687762很多人抱怨Swing的TableCellEditor如果输入数据后,忘记敲回车键就去点击其他按钮或者组件使的editor的焦点离开,会导致输入数据丢失的情况。 一种解决方法是对editor增加focusListener在
2009-08-18 10:21:00 2213
原创 为JTable添加RowHeader
JTable实现的TableHeader应该算是ColumnHeader,显示的是列标题。这里说的RowHeader指的是行标题,也就是行号。JTable已经默认实现了ColumnHeader,但却没有实现RowHeader。那么如何实现RowHeader?这就要通过JScrollPane,实际上JTable的ColumnHeader也是这么实现的。先来看看JScrollPane
2009-08-17 20:50:00 10494 4
原创 TableCellRenderer用法实践(2)定制JTableHeader
JTableHeader是管理JTable列头的对象,有方法可以设置默认渲染器(在TableColumn未设置渲染器的情况下)public void setDefaultRenderer(TableCellRenderer defaultRenderer) 。这样为JTableHeader设置渲染器可以绘制出自己想要的效果来显示列头。还可以通过TableColumn来设置每一列的渲染器,以
2009-08-17 19:50:00 7993 1
转载 Swing框架之Renderer(三)
前面文章提到过,许多复合数据型组件不仅仅需要展现数据,还需要编辑数据。比如JTable的某些单元格可能需要编辑,JComboBox除了选择外还可以直接编辑数据,有些JTree有时也需要直接编辑节点。Swing中解决此类问题的方案叫做所谓的in-place editor。Swing综合in-place editor和Renderer原理赋予了Swing扩展复杂组件功能的能力。注意in-place e
2009-08-16 21:38:00 2600
转载 Swing框架之Renderer(二)
Swing的API具有很强的灵活性和可扩展性,比如标准复合数据型组件一般不需要进行渲染器扩展,就可以实现许多应用,但是当遇到需要自定义扩展的需求时,Swing的高度抽象灵活的MVC框架也可以优雅从容的完成。Swing的这一特色典型的体现在其渲染器扩展思想上。那么如何使用渲染器呢?如何自定义渲染器来扩展组件呢?如何将渲染器思想应用到自定义组件上呢? 复合数据类型的组件如JTable、JTree
2009-08-16 21:37:00 2574 1
转载 Swing 框架之Renderer(一)
Swing组件根据其所操作的数据类型分为两种,一种是标量数据类型的组件,一类是复合数据类型的组件。标量数据类型的组件操作的是基本类型的数据,如字符串、布尔、数字等,此类型组件包括JTextField、JCheckBox、JLabel、JButton等。复合数据类型的组件操作的是诸如向量、矩形和非线形等类型的数据。向量数据类型的组件有JComboBox、JList,矩形数据类型的组件有J
2009-08-16 21:33:00 2321
原创 TableCellRenderer用法实践(一)
Swing组件根据其所操作的数据类型分为两种,一种是标量数据类型的组件,一类是复合数据类型的组件。标量数据类型的组件操作的是基本类型的数据,如字符串、布尔、数字等,此类型组件包括JTextField、JCheckBox、JLabel、JButton等。复合数据类型的组件操作的是诸如向量、矩阵和非线形等类型的数据。向量数据类型的组件有JComboBox、JList,矩阵数据类型的组件有JT
2009-08-16 19:24:00 19805 1
原创 JTable的排序和过滤(分层的思想)
JTable采用的是MVC模式,JTable控制可视外观,TableModel控制数据模型。JTable不存储数据,所有的数据都从TableModel得到。TableModel可以存储数据,也可以不存储数据直接通过计算得到。这里要实现点击某列,根据此列将所有的行进行排序。 将JTable看作是视图层,TableModel看作是物理存储层。通过在视图层和物理存储层之间增加一
2009-08-15 20:30:00 3290 1
原创 Java事件驱动模型学习(JList)
事件驱动模型: 事件监听器事件源--当事件发生时通知-->事件监听器 原理分析: 任何事件监听器XXXListener都是一个接口,继承于EventListener,其中包括事件发生时的处理方法。 而每个事件源都有一个事件监听器列表EventListenerList,当事件源调用
2009-08-13 16:19:00 2553
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人