JAVA布局管理器
JAVA的界面布局原理:因为Java是跨平台语言,使用绝对坐标显然会导致问题,即在不同平台、不同分辨率下的显示效果不一样。Java 为了实现跨平台的特性并且获得动态的布局效果,Java将容器内的所有组件安排给一个“布局管理器”负责管理,如:排列顺序,组件的大小,位置等,当窗口移动或调整大小后组件如何变化等功能授权给对应的容器布局管理器来管理,不同的布局管理器使用不同算法和策略,容器可以通过选择不同的布局管理器来决定布局。 Java中一共有6种布局管理器,通过使用6种布局管理器组合,能够设计出复杂的界面,而且在不同操作系统平台上都能够有一致的显示界面。6种布局管理器分别是BorderLayout、BoxLayout、FlowLayout、GirdBagLayout、GirdLayout和 CardLayout。其中CardLayout必须和其他5种配合使用,不是特别常用的。每种界面管理器各司其职,都有各自的作用。
CardLayout(卡式布局)
CardLayout布局管理器能够帮助用户处理两个以至更多的成员共享同一显示空间,它把容器分成许多层,每层的显示空间占据整个容器的大小,但是每层只允许放置一个组件,当然每层都可以利用Panel来实现复杂的用户界面.布局管理器(CardLayout)就象一副叠得整整齐齐的扑克牌一样,有54张牌,但是你只能看见最上面的一张牌,每一张牌就相当于布局管理器中的每一层.其实现过程如下:
首先,定义面板,为个个面板设置不同的布局,并根据需要在每个面板中放置组件:
panelOne.setLayout(new FlowLayout);
panelTwo.setLayout(new GridLayout(2,1));
再设置主面板.
CardLayout card = new CardLayout();
panelMain.setLayout(card);
下一步将开始准备好的面板添加到主面板
panelMain.add("red panel",panelOne);
panelMain.add("blue panel",panelOne);
add()方法带有两个参数,第一个为String类型用来表示面板标题,第二个为Panel对象名称.
完
相关文档:
各种Java中文转码的例子,用来对付乱码
public class HelloWorld
{
public static void main(String[] argv){
try{
System.out.println("中文1"); //1
System.out.p ......
public class ExcelUtil {
/*
* 根据Excel文件路径和表单名称,一次查找此表单的所有记录*/
public static String[][] getContentByName(String sourcePath,String sheetName){
String[][] strArray = null;
try {
InputStream is = new FileInputStream(sourcePath);
Workbook wb = Workbook.get ......
最近接手根据拼音首字母来检索中文的小功能, 比如输入A 可以把客户姓氏的第一个字的拼音首字母为A的全部检索出来
相信基本在一些应用站点上都可以看的到。
之前没有写过类似的功能。刚拿到的时候也很郁闷。。 这怎么写, 又不能像正常查询一样 select * from Ta ......
OO的精髓,我以为,是对对象的抽象,最能体现这一点的就是接口。为什么我们讨论设计模式都只针对具备了抽象能力的语言(比如c++、java、c#等),就是因为设计模式所研究的,实际上就是如何合理的去抽象。(cowboy的名言是"抽象就是抽去像的部分",看似调侃,实乃至理)。
设计模式中最基础的是工厂模式(Factory),在我最 ......
JFC是一个轻量级第三方开源组件,不依赖其他组件,使用Project即可。
作用:以图表方式展示数据
网址:www.jfree.org
类库:JFreeChart、JCommon(JFreeReport和JFreeChart的公共类库)
指南: jfreechart-1.0.13-install.pdf
API: jfreechart-1.0.13-javadocs.zip
压缩包:jfreechart-1.0.13
ant ......