java swing
2015-06-25 10:30
369 查看
目录[-]
第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展。这几天看了一些资料,总结了一下自己所学的关于java swing的知识。
一、 java swing 组件技术简介
二、 swing的“外观和感觉”(LookAndFeel)
三、 swing组件
四.swing的事件处理
第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展。这几天看了一些资料,总结了一下自己所学的关于java swing的知识。
l 是AWT的扩展,swing比AWT提供了更多的组件和外观
l 它是纯java代码编写(除了JFrame、JDialog、JApplet),因此与平台无关
2.AWT的缺点
组件少而且是本地代码实现(无法实现跨平台)
3.swing 和 AWT相比
一个重要的的改进在于swing把一个组件的处理分为图形部分和数据处理部分(MVC模型)
l 图形部分由编程环境统一处理(View)
l 数据部分由一个数据处理模型进行处理(Model)
4.swing编程应注意的问题
l swing和AWT组件不要混合使用,可能会导致不能正常显示的错误
l 正确理解轻量级组件与重量级组件的不同
轻量级组件——swing组件,由纯java代码实现,占用系统资源少
重量级组件——AWT组件,有本地c代码实现,占用系统资源多
(注:JFrame、JDialog、JApplet(顶层容器)是重量级组件)
l Metal风格 (默认)
javax.swing.plaf.metal.MetalLookAndFeel
l Windows风格
com.sun.java.swing.plaf.windows.WindowsLookAndFeel
l Windows Classic风格
com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel
l Motif风格
com.sun.java.swing.plaf.motif.MotifLookAndFeel
l Mac风格 (需要在相关的操作系统上方可实现)
com.sun.java.swing.plaf.mac.MacLookAndFeel
l GTK风格 (需要在相关的操作系统上方可实现)
com.sun.java.swing.plaf.gtk.GTKLookAndFeel
l 可跨平台的默认风格
UIManager.getCrossPlatformLookAndFeelClassName()
l 当前系统的风格
UIManager.getSystemLookAndFeelClassName()
意义:通过LookAndFeel机制,我们可以是程序的设计者任意转换程序的人机界面来对应不同的操作系统
2.设置swing的LookAndFeel
在swing中,采用UIManager类来管理swing界面的LookAndFeel,UIManager类提供静态方法setLookAndFeel()来设置界面的LookAndFeel,该方法是一个重载方法,提供两个重载方式:
setLookAndFeel(LookAndFeel newLookAndFeel)
setLookAndFeel( String className)
其中:参数newLookAndFeel表示组件的某种外观,className表示组件某种外观的名字
2-1.设置方法(静态设置,动态设置)
静态设置——设计时指定LookAndFeel
eg1:
String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
eg2:
String lookAndFeel = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);
动态设置——运行时指定LookAndFeel
eg:
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
//运行时动态更新外观
SwingUtilities.updateComponentTreeUI(this)
附:SwingUtilities.updateComponentTreeUI(Component c)
对组件c重新设置外观
注:由于JFrame、JDialog、JApplet(顶层容器)为重量级组件,因此他们的外观只与操作系统平台有关系,在相同的操作系统平台下表现相同的外观
2-2.程序代码
?
2.往swing容器里添加组件
对于swing顶层容器(JFrame,JDialog,JApplet),在添加组件时,不能直接调用容器的add()方法。
往顶层容器添加组件可用以下方法:
a) 通过getContentPane()方法获得当前容器的内容面板对象,在调用容器的add()方法加入各个组件
b) 先利用JPanel类生成一个内容面板对象panel,再将各个组件加入到panel中,然后调用的容器的setContentPane()方法,将panel加入到当前容器中
3.使用swing组件的基本规则
a) 把swing组件放入一个顶层容器中
b) 避免使用非swing的重量级组件
c) 往swing顶层容器添加组件时,不能直接调用add()方法
d) 内容面板缺省的布局策略是BorderLayout,不能对顶层容器进行布局
b) 有自己的事件包(javax.swing.event)
c) Component类的五种事件
d) 能激活Container类的ContainerEvent事件的Swing组件
Swing组件中的容器(如:JFrame, JPane)
复合组件(如:JComboBox)
第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展。这几天看了一些资料,总结了一下自己所学的关于java swing的知识。
一、 java swing 组件技术简介
二、 swing的“外观和感觉”(LookAndFeel)
三、 swing组件
四.swing的事件处理
第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展。这几天看了一些资料,总结了一下自己所学的关于java swing的知识。
一、 java swing 组件技术简介
1.swing的特性l 是AWT的扩展,swing比AWT提供了更多的组件和外观
l 它是纯java代码编写(除了JFrame、JDialog、JApplet),因此与平台无关
2.AWT的缺点
组件少而且是本地代码实现(无法实现跨平台)
3.swing 和 AWT相比
一个重要的的改进在于swing把一个组件的处理分为图形部分和数据处理部分(MVC模型)
l 图形部分由编程环境统一处理(View)
l 数据部分由一个数据处理模型进行处理(Model)
4.swing编程应注意的问题
l swing和AWT组件不要混合使用,可能会导致不能正常显示的错误
l 正确理解轻量级组件与重量级组件的不同
轻量级组件——swing组件,由纯java代码实现,占用系统资源少
重量级组件——AWT组件,有本地c代码实现,占用系统资源多
(注:JFrame、JDialog、JApplet(顶层容器)是重量级组件)
二、 swing的“外观和感觉”(LookAndFeel)
1.swing中常见的“LookAndFeel”l Metal风格 (默认)
javax.swing.plaf.metal.MetalLookAndFeel
l Windows风格
com.sun.java.swing.plaf.windows.WindowsLookAndFeel
l Windows Classic风格
com.sun.java.swing.plaf.windows.WindowsClassicLookAndFeel
l Motif风格
com.sun.java.swing.plaf.motif.MotifLookAndFeel
l Mac风格 (需要在相关的操作系统上方可实现)
com.sun.java.swing.plaf.mac.MacLookAndFeel
l GTK风格 (需要在相关的操作系统上方可实现)
com.sun.java.swing.plaf.gtk.GTKLookAndFeel
l 可跨平台的默认风格
UIManager.getCrossPlatformLookAndFeelClassName()
l 当前系统的风格
UIManager.getSystemLookAndFeelClassName()
意义:通过LookAndFeel机制,我们可以是程序的设计者任意转换程序的人机界面来对应不同的操作系统
2.设置swing的LookAndFeel
在swing中,采用UIManager类来管理swing界面的LookAndFeel,UIManager类提供静态方法setLookAndFeel()来设置界面的LookAndFeel,该方法是一个重载方法,提供两个重载方式:
setLookAndFeel(LookAndFeel newLookAndFeel)
setLookAndFeel( String className)
其中:参数newLookAndFeel表示组件的某种外观,className表示组件某种外观的名字
2-1.设置方法(静态设置,动态设置)
静态设置——设计时指定LookAndFeel
eg1:
String lookAndFeel = "javax.swing.plaf.metal.MetalLookAndFeel";
UIManager.setLookAndFeel(lookAndFeel);
eg2:
String lookAndFeel = UIManager.getCrossPlatformLookAndFeelClassName();
UIManager.setLookAndFeel(lookAndFeel);
动态设置——运行时指定LookAndFeel
eg:
UIManager.setLookAndFeel(UIManager.getCrossPlatformLookAndFeelClassName());
//运行时动态更新外观
SwingUtilities.updateComponentTreeUI(this)
附:SwingUtilities.updateComponentTreeUI(Component c)
对组件c重新设置外观
注:由于JFrame、JDialog、JApplet(顶层容器)为重量级组件,因此他们的外观只与操作系统平台有关系,在相同的操作系统平台下表现相同的外观
2-2.程序代码
?
5 |
三、 swing组件
1.swing组件的分类2.往swing容器里添加组件
对于swing顶层容器(JFrame,JDialog,JApplet),在添加组件时,不能直接调用容器的add()方法。
往顶层容器添加组件可用以下方法:
a) 通过getContentPane()方法获得当前容器的内容面板对象,在调用容器的add()方法加入各个组件
b) 先利用JPanel类生成一个内容面板对象panel,再将各个组件加入到panel中,然后调用的容器的setContentPane()方法,将panel加入到当前容器中
3.使用swing组件的基本规则
a) 把swing组件放入一个顶层容器中
b) 避免使用非swing的重量级组件
c) 往swing顶层容器添加组件时,不能直接调用add()方法
d) 内容面板缺省的布局策略是BorderLayout,不能对顶层容器进行布局
四.swing的事件处理
a) Swing组件可以产生AWT包中的事件b) 有自己的事件包(javax.swing.event)
c) Component类的五种事件
d) 能激活Container类的ContainerEvent事件的Swing组件
Swing组件中的容器(如:JFrame, JPane)
复合组件(如:JComboBox)
相关文章推荐
- Java继承的基本概念及其限制 总结
- 使用Spring的NamedParameterJdbcTemplate完成DAO操作
- Struts2 Web资源获取
- java之yield(),sleep(),wait()区别详解
- Javassist详解
- 在eclipse中切换不同workspace的方法和打开已经存在的工程的方法
- JAVA设计模式(21):行为型-迭代器模式(Iterator)
- Myeclipse将控制台日志输出到文件中和显示更多的日志信息
- html抽取文本信息-java版(适合lucene建立索引)
- 用Java实现FTP批量大文件上传下载
- Struts2 的工作原理
- 各种排序算法的分析及java实现
- Java的内存机制
- Hibernate懒加载异常解决
- java连接器
- Java实现FTP文件上传与下载
- 运行Eclipse项目时中出现Address already in use: bind的解决方法
- java 两个通过java代码操作FTP的类,上传下载删除,获取文件
- JavaSE_集合_LinkedList、ArrayList类
- CXF和Spring整合