-
1.java的图形界面简单介绍
1).awt
jdk1.4之前就推出的图形界面类。
跨平台性2).swing
jdk1.4的时候推出的图形界面类 -
(1)
swing的图像界面类添加了一些新的东西一般是带J的,比如说JFrame,JLabel等等,这样是图形界面类跟家丰富了,其次实现了更好的跨平台性和可移植性
2.常用的Swing图形界面API类
1.容器
JFrame 窗体类
JPanel 面板类2.元素组件
JButton 按钮类
JLabel 标签类
JTextField 单行文本输入框类
JPasswordField 密码文本输入框类
JCheckBox 复选框类
JComboBox 下拉框类JMenuBar 菜单栏类
JMenu 菜单类
JMenuItem 子菜单类
JSeparator 水平分割符类
包名:javax.swing.*;
3.常用的布局API类
FlowLayout 流式布局类
BorderLayout 边框布局类
GridLayout 网格布局类包名:java.awt.*;
4.按钮和标签上可以加图片
可以添加图片
eg;
javax.swing.ImageIcon image = new javax.swing.ImageIcon("图片的路径");
javax.swing.JLabel jla = new javax.swing.JLabel(image);
按钮上添加图片与标签上的类似
5.实现一个简单的登录界面
1).新建一个文本文档,将文件的名字修改为Login.java
2).定义Login类和main函数。
3).定义初始化界面的方法。
4).在初始化界面的方法中实例化一个JFrame类的对象。
5).设置JFrame类对象的属性值。
6).实例化元素组件对象,添加到窗体上。
7).在Main函数中实例化Login类的对象,然后调用初始化界面的方法。
- 6.计算器的界面为例:
-
/** * 定义一个test的包来管理CalculatorUI类 */ package test; import javax.swing.*; import java.awt.*; /** * 定义一个CalculatorUI类 * @author Allen * */ public class CalculatorUI { // private static final String Integer = null; /** * 定义一个一个程序的入口主函数 * @param args */ public static void main(String[] args){ //创建一个CalculatorUI类的对象 CalculatorUI cal = new CalculatorUI(); //调用初始化界面的方法 cal.IntUI(); } //初始化一个界面 public void IntUI(){ //创建一个窗体对象 JFrame jf = new JFrame(); /* * 设置窗体 */ jf.setTitle("计算器界面"); jf.setSize(220,320); jf.setResizable(false); jf.setDefaultCloseOperation(3); jf.setLocationRelativeTo(null); /* * 设置计算器的背景 */ ImageIcon image = new ImageIcon("image/bkg.png"); JLabel jlab = new JLabel(image);//标签上添加图片 //设置标签的大小 jlab.setBounds(0,0,image.getIconWidth(),image.getIconHeight()); //将标签添加到面板的最底层 jf.getLayeredPane().add(jlab); //将LayeredPane上一层的面板设置为透明 JPanel contentPanel = (JPanel)jf.getContentPane(); /* *设置面板透明 */ contentPanel.setOpaque(false); panelNorth().setOpaque(false); panelCenter().setOpaque(false); panelEast().setOpaque(false); /* * 添加菜单栏及面板到窗体 */ jf.setJMenuBar(menuBar()); jf.add(panelNorth(),BorderLayout.NORTH); jf.add(panelCenter(),BorderLayout.CENTER); jf.add(panelEast(),BorderLayout.EAST); //设置窗体的可见性 jf.setVisible(true); } /* *创建菜单 */ private JMenuBar menuBar(){ //创建菜单栏 JMenuBar jme = new JMenuBar(); JMenu jm = new JMenu("查看(V)");//创建菜单 jme.add(jm);//菜单栏添加菜单 /* * 创建菜单子项对象 */ JMenuItem jmeI = new JMenuItem("标准型(T)"); JMenuItem jmeI1 = new JMenuItem("科学性(S)"); JMenuItem jmeI2 = new JMenuItem("程序员(P)"); //创建水平分割线 JSeparator js = new JSeparator(); /* * 添加子项及水平分割线到菜单 */ jm.add(jmeI); jm.add(jmeI1); jm.add(js); jm.add(jmeI2); JMenu jm1 = new JMenu("编辑(E)");//创建菜单 jme.add(jm1);//添加菜单到菜单栏 /* * 创建菜单子项 */ JMenuItem jmen = new JMenuItem("复制(C)"); JMenuItem jmen1 = new JMenuItem("粘贴(P)"); JMenuItem jmen2 = new JMenuItem("历史记录(H)"); JSeparator js1 = new JSeparator();//创建水平分割线 /* * 添加子项及水平分割线到菜单 */ jm1.add(jmen); jm1.add(jmen1); jm1.add(js1); jm1.add(jmen2); JMenu jm2 = new JMenu("帮助(H)");//创建菜单项 jme.add(jm2);//添加菜单到菜单栏 /* * 创建菜单子项 */ JMenuItem jmenu = new JMenuItem("查看帮助(V)"); JMenuItem jmenu1 = new JMenuItem("关于计算器(A)"); JSeparator js2 = new JSeparator(); /* * 添加子项及水平分割线到菜单 */ jm2.add(jmenu); jm2.add(js2); jm2.add(jmenu1); //返回菜单栏对象 return jme; } //创建北边的面板 private JPanel panelNorth(){ //实例化一个面板 JPanel jpa = new JPanel(); JTextField jte = new JTextField();//创建一个文本框 jte.setPreferredSize(new Dimension(200,55));//设置文本框的大小 jte.setEditable(false);//设置文本框不可编辑 jte.setText("0");//设置文本框的初始字符 jte.setHorizontalAlignment(JTextField.RIGHT);//设置字符靠右边输出 jte.setFont(new Font("行书",Font.BOLD,35));//设置字符 jpa.add(jte);//面板上添加文本框 //返回面板对象 return jpa; } //创建中央的面板 private JPanel panelCenter(){ JPanel jpa = new JPanel();//实例化一个面板对象 jpa.setLayout(new FlowLayout(FlowLayout.RIGHT,7,5));//设置窗体的流式布局 //创建一个数组 String [] array ={"image/mc.png","image/mr.png","image/ms.png","image/m+.png","image/←.png","image/ce.png", "image/c.png","image/加减.png","image/7.png","image/8.png","image/9.png","image/除.png","image/4.png","image/5.png", "image/6.png","image/乘.png","image/1.png","image/2.png","image/3.png","image/减.png","image/0.png","image/点.png","image/加.png"}; //循环遍历数组 for(int i=0;i<array.length;i++){ //创建一个按钮对象 JButton jbu = new JButton(new ImageIcon(array[i])); if(array[i].equals("image/0.png")){ jbu.setPreferredSize(new Dimension(75,26)); } else{ jbu.setPreferredSize(new Dimension(34,26)); } //添加按钮到面板 jpa.add(jbu); } //返回面板对象 return jpa; } //创建中央的面板 private JPanel panelEast(){ JPanel jpa = new JPanel();//实例化一个面板对象 jpa.setLayout(new FlowLayout(FlowLayout.LEFT,0,5));//设置窗体的流式布局 jpa.setPreferredSize(new Dimension(40,0));//设置面板的大小 //创建一个数组 String [] array ={"image/m-.png","image/根号.png","image/%.png","image/1x.png","image/=.png"}; //循环遍历数组 for(int i=0;i<array.length;i++){ //创建一个按钮对象 JButton jbu = new JButton(new ImageIcon(array[i])); if(array[i].equals("image/=.png")){ jbu.setPreferredSize(new Dimension(34,56)); } else{ jbu.setPreferredSize(new Dimension(34,26)); } //添加按钮到面板 jpa.add(jbu); } //返回面板对象 return jpa; } }
相关推荐
Java Swing界面开发是Java GUI(图形用户界面)编程的一个重要组成部分,它提供了丰富的组件库用于构建桌面应用程序。在这个教程中,我们将深入探讨几个关键的知识点,包括Java基础、数据结构、网络编程、线程管理、...
Swing界面开发工具源代码是Java开发者们设计和构建图形用户界面(GUI)的重要资源,尤其对于那些希望在他们的应用程序中创建美观且功能丰富的Swing界面的开发者来说,这是一个宝贵的工具。Swing库是Java标准版(Java...
rt.jar swing界面开发rt.jar swing界面开发rt.jar swing界面开发rt.jar swing界面开发rt.jar swing界面开发
这篇“简单的SWING界面开发”总结将帮助我们深入理解如何使用Swing来创建用户友好的桌面应用程序。 首先,Swing是Java Foundation Classes (JFC)的一部分,它是对早期AWT(Abstract Window Toolkit)的增强。Swing...
在"java swing界面开发的班级管理系统"项目中,我们可以深入探讨以下几个重要的知识点: 1. **Swing组件**:Swing 提供了多种组件,如 JButton、JLabel、JTextField、JTextArea、JTable等,这些组件可以用于构建...
### Swing界面开发与游戏开发详解 #### 一、Swing简介及入门 Swing是Java的一个图形用户界面(GUI)工具包,它提供了丰富的组件来帮助开发者构建桌面应用程序。相比于AWT(Abstract Window Toolkit),Swing提供了更多...
在本项目中,"java swing界面开发的一个抓取快递接口工具"是一个利用Java Swing来设计图形用户界面(GUI)的应用,其主要功能是与快递100查询接口进行交互,获取物流信息。下面我们将深入探讨Java Swing和快递100...
Java Swing是目前图形界面设计的主流开发工具,《Java Swing图形界面开发与案例详解[1]》从实用的角度出发,通过大量实例全面介绍Java Swing中各种组件的应用及图形界面的开发技术。《Java Swing图形界面开发与案例...
本文件展示了一个用Java语言开发的小型系统——学生信息管理系统,该系统使用了 Swing 图形用户界面组件库来完成交互界面的设计,包含了学生基本信息(如学号、姓名、年龄和专业)的增加、查询、修改与删除等主要...
在压缩包的文件名列表中,"www.pudn.com.txt"可能是一个链接或资源列表,提供了更多关于Swing界面开发的资料,可能包括额外的教程、示例代码或者其他学习资源。而文件"gift"可能是一个jar文件,包含了这四个Swing...
具体而言,项目分为Calculator类和CalculatorFrame类两个部分,前者负责计算逻辑实现,后者则是利用Swing构建图形用户界面(GUI),并实现了对各个算术操作的响应。 适合人群:初学者或有一定Java基础知识的学生和...
Java Swing图形界面开发与案例详解 .王鹏等.扫描版.pdf
然而,这同时也意味着Swing界面可能不如一些本地GUI库那样流畅。为了解决这个问题,Java提供了一些优化技术,如double-buffering和及时绘制(Repaint Manager),来改善动画和滚动效果。 在实际项目中,开发者还...
《Java Swing图形界面开发与案例详解》是一本深入讲解Java GUI编程的书籍,源代码提供了丰富的实例,适合Java初学者入门学习。Swing是Java AWT(Abstract Window Toolkit)库的扩展,它提供了更为丰富的组件和更现代...
在"Java+Swing图形界面开发与案例详解"这本书中,作者深入浅出地介绍了如何使用Swing来设计和实现GUI应用。 该书的实例代码包含了从第一讲到第八讲的源码,逐步引导读者从基础到进阶掌握Swing的使用。以下是这些讲...
总的来说,Swing界面美化是Java GUI开发中的一项重要技能,通过合理利用Look-and-Feel机制和第三方库,开发者可以打造出独特且吸引人的用户界面,提升用户体验。在实际项目中,结合业务需求和个人审美,灵活运用这些...
Java Swing是Java标准库中的一个组件,用于构建桌面应用程序的用户界面。它是Java Foundation Classes (JFC)的一部分,提供了一套丰富的组件库,允许开发者创建功能完备、交互性强的图形用户界面(GUI)。本实例代码...
Java Swing是Java编程语言中用于构建桌面应用程序图形用户界面(GUI)的一个库,它是Java Foundation Classes (JFC)的一部分。Swing提供了丰富的组件集,包括按钮、文本框、菜单等,使得开发者能够创建功能强大的、...
在这个“Java Swing 图形界面开发--文章的源码”压缩包中,包含了与CSDN博客文章《xietansheng》相关的所有示例代码,这些代码都是使用Eclipse IDE编写的。 1. **Java Swing组件**: - Swing 提供了多种组件,如 ...