最后一个基本的Swing组件是JPanel组件。JPanel组件可以作为一个通常目的的窗口对象,替换了AWT的Panel窗口,而当我们需要一个可绘制的Swing组件区域时,JPanel替换了Canvas组件。 JPanel有四个构造函数: public JPanel() JPanel panel = new JPanel(); public JPanel(boolean isDoubleBuffered) JPanel panel = new JPanel(false); public JPanel(LayoutManager manager) JPanel panel = new JPanel(new GridLayout(2,2)); public JPanel(LayoutManager manager, boolean isDoubleBuffered) JPanel panel = new JPanel(new GridLayout(2,2), false);
使用这些构造函数,我们可以修改FlowLayout中的默认布局管理器,或是通过执行true或false修改默认的双缓冲。 我们可以将JPanel用我们通常目的的容器,或者是用作新组件的基类。对于通常目的容器,其过程很简单:创建面析,如果需要设置其布局管理器,并且使用add()方法添加组件。 当我们需要创建一个新的组件时,派生JPanel并且重写public void paintComponent(Graphics g)方法。尽管我们可以直接派生JComponent,但派生JPanel修改更为合理。列表4-8演示了一个组件绘制适应组件尺寸的椭圆的简单组件,同时包含一个测试驱动。 package swingstudy.ch04; import java.awt.Color; import java.awt.EventQueue; import java.awt.Graphics; import java.awt.GridLayout; import javax.swing.JFrame; import javax.swing.JPanel; publicclass OvalPanel extends JPanel { Color color; public OvalPanel() { this(Color.black); } public OvalPanel(Color color) { this.color = color; } publicvoid paintComponent(Graphics g) { int width = getWidth(); int height = getHeight(); g.setColor(color); g.drawOval(0, 0, width, height); } /** * @param args */publicstaticvoid main(String[] args) { // TODO Auto-generated method stub Runnable runner = new Runnable() { publicvoid run() { JFrame frame = new JFrame("Oval Sample"); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOS E); frame.setLayout(new GridLayout(2,2)); Color colors[] = {Color.RED, Color.BLUE, Color.GREEN, Color.YELLOW }; for (int i=0;i
表4-16显示了JPanelUIResource相关的属性集合。对于JPanel组件,有五个不同的属性。这些设置也许会影响到面板内的组件。
JPanel UIResource元素 在本章中,我们探讨了所有Swing组件的基类:JComponent类。由讨论我们了解了所有组件的共同元素,例如工具提示,以及特定的组件,例如JLabel。同时我们了解了如何使用Icon接口以及ImageIcon类为组件添加图标,而GrayFilter图像过滤器用于禁止图标。
我们同时了解了AbstractButton组件,他是所有Swing按钮对象的根对象。我们了解了其数据模型接口,ButtonModel,以及这个接口的默认实现,DefalutButtonModel。接着,我们了解了JButton类,他是最简单的AbstractButton实现。最后,我们了解了作为基本Swing容器对象的JPanel。
在第5章中,我们将会深入一些复杂的AbstractButton实现:转换按钮。
发表评论
-
C字符串分割
2012-07-06 09:51 1000来自:http://hi.baidu.com/alexin ... -
Source insight使用之正则表达式
2012-07-06 09:44 33221.正则表达式中必须包含群组,即\(\)包含的部分。这部分 ... -
正则表达式小探
2012-07-06 09:36 707正则表达式"(Regular Expressio ... -
Flex 4 新体验
2012-07-06 09:29 653直到最近才开始真 ... -
分页无刷新
2012-07-05 20:44 758var pageSize=3,currentPageNum ... -
核心Swing组件(七)
2012-07-03 12:15 557最后一个基本的Swing组件是JPanel组件。JPane ... -
FLEX实现关于
2012-07-02 10:10 623about.mxml List { backg ... -
Flex button icon动态设置
2012-07-02 10:09 612前段时间写了个datagrid的多列下拉选取控件: Mul ... -
flex cairngorm项目实战
2012-07-02 10:09 677项目功能与界面模仿阿布网站 系统功能: 新闻管 ... -
flex 客户端缓存 module swf
2012-07-02 10:09 784flex或者flash客户端 ... -
flex ant
2012-07-02 09:41 610... -
FLEX 条形图(柱状图)设置刻度为百分比
2012-07-01 09:26 1107作者原创,如需转载请注明出处:www.krzone.org ... -
谈谈我对未来的想法吧
2012-07-01 09:26 610来总行珠海研发中 ... -
JavaFX Script With Eclipse 入门
2012-07-01 09:26 672最近Java社区最火的就是JavaFX Script的发布 ... -
Linux网络入侵检测软件
2012-07-01 09:26 1319本软件是本人的毕业设计"作品"。当年是 ... -
Spring 3.0 整合 iBatis 3 Beta10 配置
2012-07-01 09:26 806弄了好长时间了,上网找各种资料,文档,最后发现Spring ... -
Flex Builder在卷接机组监控机中的应用―JSJ论文[网转]
2012-06-30 11:13 578Flex Builder在卷接机组监控机中的应用―JSJ论文[ ... -
Flex+PHP RIA应用开发实战详解
2012-06-30 11:13 751Flex+PHP RIA应用开发实战详解 2011年05月1 ... -
Flex 3.0程序开发技术详解
2012-06-30 11:13 612Flex 3.0程序开发技术详解 2011年05月10日 ... -
flex中设置Asserts.swc运行时类库的图片符号
2012-06-30 11:13 642flex中设置Asserts.swc运行时类库的图片符号 2 ...
相关推荐
用大量图示分析了Swing组件的特点、结构及相互关系,使有经验的编程人员能高效利用Swing的强大功能。本书对掌握Swing技术提供了最全面的参考 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。
Swing JTable组件设置单元格合并,内置Test测试类,核心API GridBagTable tasktable = new GridBagTable(model); tasktable.mergeCells(startRow, endRow, 0, 0);
这个图书管理系统,主要是对图书和员工进行管理、维护,基本实现了借阅到规划图书的流程,采用swing组件,由纯Java语言编写而成,核心就是对数据库的增、删、改查
系统基于JAVA的Application模式,使用Swing组件作为系统用户界面和MYSQL小型数据库管理系统实现。主要提供用户查询功能、住宿管理等功能,提供管理员客房、用户、系统信息的管理功能。 该系统遵循软件工程中的开发...
学习笔记:整理了Java语言在游戏开发中的核心知识点和常用技术,方便你随时查阅和学习。 适用人群: 这份资源包适用于所有对Java游戏开发感兴趣的朋友,无论你是计算机专业的学生,还是希望业余时间尝试游戏开发的...
这是什么JHexViewer是基本的十六进制查看器Swing组件,可用于基于它创建更复杂的十六进制查看器。 为了使它可定制且易于扩展,我们付出了很多努力,而不是强迫您使用固定的实现。 几乎所有内容都可以更改,例如内容...
系统基于JAVA的Application模式,使用Swing组件作为系统用户界面和MYSQL小型数据库管理系统实现。主要提供用户查询功能、住宿管理等功能,提供管理员客房、用户、系统信息的管理功能。 该系统遵循软件工程中的开发...
掌握Java语言基础知识 理解面向对象的编程思想 运用Java编写命令行程序 运用JDBC编写数据库访问程序 运用Swing组件编写图形用户界面程序 运用Swing组件和JDBC实现C/S结构的应用程序
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、泛型程序设计、集合以及多线程等内容。 全书对Java...
可视化浏览应用程序组件层次结构 监控 AWT/Swing 事件 调试 2D 图形 轻松找到源代码中负责创建特定 UI 的位置。 监控线程规则违规 下面显示了 Swing Explorer 如何检查基本的 Swing 应用程序。 有关 Swing Explorer ...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
swing程序源码 Java 7 程序设计入门经典 《Java 7 程序设计入门经典》根据最新的 Java 7 撰写,全面系统地讲解了 Java 语言的语法和核心要素、利用 Swing 进行 GUI 编程以及 Java API 库三大方面的内容,包含大量...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、叙述方式深入浅出,并包含大量示例,从而帮助读者...
全书共14章,包括Java基本的程序结构、对象与类、继承、接口与内部类、图形程序设计、事件处理、Swing用户界面组件、部署应用程序和Applet、异常日志断言和调试、泛型程序设计、集合以及多线程等内容。 全书对Java...