Java Gui组件
Java提供三个主要的包来进行GUI开发:
- ava.awt 包 – 主要提供字体/布局管理器;
- javax.swing 包[商业开发常用] – 主要提供各种组件(窗口/按钮/文本框);
- java.awt.event 包 – 事件处理,后台功能的实现。
Swing组件
可分为三部分:
- 顶层容器:常用有JFrame,JDialog
- 中间容器:JPanel,JOptionPane,JScrollPane,JLayeredPane 等,主要以panel结尾
- 基本组件:JLabel,JButton,JTextField,JPasswordField,JRadioButton 等
相关API:
Jframe:
JFrame frame = new JFrame("Hello"); // 创建及设置窗口
frame.setDefaultLookAndFeelDecorated(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); //设置默认的关闭窗口
frame.pack();// 显示窗口
frame.setVisible(true);
//这个最好放在最后,不然会出现视图看不到的情况
frame.setBounds(600, 300, 500, 400);//设置窗口的x,y位置,窗口大小x,y
frame.add(panel)
frmIpa.getContentPane().add(panel, BorderLayout.NORTH);
frmIpa.getContentPane().add(scrollPane, BorderLayout.CENTER);
Panel:
// Jpanel
JPanel panel = new JPanel(); //创建面板容器
panel.add(button);//添加按钮到面板
//JOptionPane
JOptionPane.showMessageDialog(panel3, "没有选中任何文件", "提示"JOptionPane.WARNING_MESSAGE);
//JScrollPane
JScrollPane scrollPane = new JScrollPane();//创建可滚动面板
scrollPane.setViewportView(textArea);//设置面板内容
相关组件
//JLabel
JLabel label = new JLabel("Hello World");//添加标签
//Jbutton
JButton button = new JButton("选择文件");//创建按钮
button.addActionListener(new ActionListener() {}//添加操作按钮后的事件监听器
//JFileChooser
jfc.setFileSelectionMode(JFileChooser.FILES_AND_DIRECTORIES );// 设置文件对话框
jfc.showSaveDialog(frmIpa);// 显示打开的文件对话框
jfc.getSelectedFile();// 获取选择器选择的文件
//JTextArea
JTextArea textArea = new JTextArea();//创建文本区域
textArea.setText(content);//设置内容
相关框架
SpringMVC
Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发。
Mybatis
MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
Spring
Spring框架是一个开放源代码的J2EE应用程序框架,是针对bean的生命周期进行管理的轻量级容器。Spring提供了功能强大IOC、AOP及Web MVC等功能。Spring可以单独应用于构筑应用程序,也可以和Struts、Webwork、Tapestry等众多Web框架组合使用,并且可以与 Swing等桌面应用程序AP组合。
Maven
Maven是一个项目管理工具,它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。