02-swing_window类
来源:互联网 发布:合肥市大数据管理局 编辑:程序博客网 时间:2024/05/17 19:18
一, 顶层容器概述
用Java进行图形编程时, 其组件 绘制在容器里这个容器就是顶层容器, 相当于一个窗口.
顶层容器是进行图形编程的基础,
一切图形化的东西都必然 存在于 顶层容器中.
二, 顶层容器类
可独立显示, 作为图形界面的最顶层窗口1) JFrame , 设计类似于Windows 系统中窗口形式的应用程序
2) JDialog, 设计对话框, 类似于JFrame
3) JApplet, 设计嵌入网页中的Java小程序
三, 实际开发图形界面
如图:JFrame作为顶级窗口的层次图
|-- 菜单组件
|-- 内容面板(JPanel)
|-- 基本组件(JButton)
1) 顶层容器 -> JFrame
2) 内容面板, 菜单组件
3) 基本组件, 布局
四, 在顶层容器中添加组件
1, 添加的组件的种类
A) 添加内容面板(JPanel)B) 添加基本组件
注意: 不能直接将基本组件添加到顶级容器中,
只能将基本组件添加到顶级容器中的中间容器.
2, 添加方式
1) 获取jFrame的内容面板jPanel, 在jPanel上添加 基本组件① JPanel jPanel = jFrame.getContentPane();
② jPanel.add( 基本组件 );
2) 新建一个jPanel, 将基本组件添加到 jPanel里, 最后将jPanel放入jFrame
① JPanel jPanel = new JPanel();
② jPanel.add( 基本组件 );
③ jFrame.setContentPane( jPanel );
3, 举例
在顶层容器中添加内容面板(中间容器)import javax.swing.*;/** * 在顶层容器中添加内容面板(中间容器) * 在内容面板上添加按钮(基本组件) */public class AddBaseComponent{public static void main(String[] args) {// 创建一个顶层容器类对象JFrame frame = new JFrame( "add content pane" );// 大小: 宽300, 高200frame.setSize(300, 200);// 点击 "X", 关闭 frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );// 可见性frame.setVisible( true );// 创建一个中间容器类对象JPanel contentPane = new JPanel();// 将中间容器 放入 顶层容器, 作为内容面板frame.setContentPane( contentPane );// 在 内容面板中 添加 按钮contentPane.add( new JButton( "happy button" ) );}}
4, 在顶层容器中添加菜单栏
import javax.swing.*;/** 将创建好的菜单, 放置在顶层容器中 * 嵌入菜单条:jFrame.setJMenuBar( jMenuBar ) *嵌入中间容器:jFrame.setContentPane( jPanel ) */public class AddMenuToJFrame {public static void main(String[] args) {// 顶层容器JFrame frame = new JFrame();// 尺寸frame.setSize( 300, 200 );// 关闭frame.setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );// 标题frame.setTitle( "学生信息管理系统" );// 菜单条 组件JMenuBar menubar = new JMenuBar();// 将该菜单条组件 添加进 顶层容器frame.setJMenuBar( menubar );// 菜单 组件JMenu fileMenu = new JMenu( "文件" );JMenu editMenu = new JMenu( "编辑" );JMenu viewMenu = new JMenu( "视图" );// 将菜单组件 添加到 菜单条 menubar.add( fileMenu );menubar.add( editMenu );menubar.add( viewMenu );// 菜单项 组件JMenuItem openItem = new JMenuItem( "打开" );JMenuItem saveItem = new JMenuItem( "保存" );JMenuItem printItem = new JMenuItem( "打印" );JMenuItem exitItem = new JMenuItem( "退出" );// 将菜单项 添加到 菜单fileMenu.add( openItem );fileMenu.add( saveItem );fileMenu.addSeparator();// 分割线组件fileMenu.add( printItem );fileMenu.add( exitItem );// 内容面板JPanel contentPane = new JPanel();// 添加 按钮 到 内容面板contentPane.add( new JButton( "button" ) );// 将内容面板 添加到 顶层容器frame.setContentPane( contentPane );// 可见性// 注意, 可见性设置必须放最后, 否则不显示菜单条 frame.setVisible( true );}}
- 02-swing_window类
- C++习题-类02
- 黑马程序员 02 类
- Java集合类02
- IO-02RandomAccessFile类
- 【2015.02.02】 Integer类
- C++ 类 (02)
- 02-GameObject类
- 初学cpp<classl类02>
- 02_05.a伪类
- c++面向对象类02
- 02-java类库(集合类)
- 02 java注释、类、package
- 02 Hibernate的几个类
- UIImage类及UIButton类02
- [Java] 常用类-02 基础数据类型包装类 / Math 类
- C#中类的继承问题02
- 第四章(02) 类和对象
- Android开发之Camera分析(一)
- const的用法详解
- LibSVM笔记系列(2)——如何提升LibSVM分类效果
- java实现DESede加解密
- http://wenku.baidu.com/view/457e9d23aaea998fcc220ea6.html
- 02-swing_window类
- 修改navigationItem.backBarButtonItem.title的值
- 编程公开课导航
- 思考
- ajax 实例
- 正则表达式引擎的构建——基于编译原理DFA(龙书第三章)——5 DFA最小化
- iOS学习之UINavigationController详解与使用(三)ToolBar
- catalan数
- HDU3127:WHUgirls(完全背包)