Swing 窗体编程
- Swing 图形界面几个优势
1> 不再依赖本地平台的GUI,无需采用各种平台的GUI 交际,因此Swing 提供了大量图形界面组件,远远超出了AWT所提供的图形界面组件集。
2> 不再依赖于本平台GUI , 因此不会产生与平台相关的bug.
3> 在各种平台上运行时可以保证具有相同的图形界面外观。 - Swing 两大特征
1>Swing 组件采用 MVC(Model - View - Controller , 模型-视图-控制器),模型用于维护组件的各种状态,视图是组件的可视化表现,控制器用于控制对于各种 事件,组件做出怎样的放反应。
2> Swing 在不同的平台上表现一致,并且有能力提供本地平台不支持的显示外观。 - Swing 组件按功能来分为:
1> 顶层容器:JFrame , JApplet , JDialog 和 JWindow等
2> 中间容器:JPanel , JScrollPAne , JSplitPane , JToolBar。
3> 特殊容器:在用户界面上具有特殊作用的中间容器
4> 基本组件:实现人机交互的组件
5> 不可编辑信息的显示组件:向用户显示不可编辑信息的组件。
6> 可编辑信息的显示组件:向用户显示能被编辑的格式化信息额组件。
7> 特殊对话框组件:可以直接产生特殊对话框的组件。 - Swing 组件具有以下4个额外功能
1> 可以为Swing 组件设置提示信息
2> 很多Swing 组件如 按钮,标签,菜单项等,除使用文字外,还可以使用图标修饰自己。
3> 支持插拔式的外观风格。
4> 支持设置边框
如果需要改变程序的外观风格,可以使用一下代码:
try{
// 设置使用windows 风格
UIManager.setLookAndFeel("com.sun.java.swing.plaf.windows.WindowsLookAndFeel");
//通过更新 f 容器以及 f 容器里所有组件的UI
SwingUtilities.updateComponentTreeUI(f);
}
catch (Exception e){
e.printStackTrace();
}
- Swing 组件添加边框步骤
1> 使用 BorderFactory 或者 XxxBorder 创建 XxxBorder 实例。
2> 调用 Swing 组件的 setBorder方法为该组件设置边框。