[java桌面应用开发]构建第一个java桌面应用

目录

第一节 java桌面应用开发系统环境要求
第二节 AWT与Swing
第三节 容器
第四节 实例演示&&代码

01 java桌面应用开发系统环境要求

原生Java环境,无需额外配置

02 AWT与Swing

图形用户界面(Graphical User Interface,GUI)是大多数程序不可缺少的部分,采用图形方式显示的计算机操作用户界面,Java的图形用户界面由各种组件构成,在java.awt包和javax.swing包中定义了多种用于创建图形用户界面的组件类。设计图形用户界面时一般有3个步骤,分别是选取组件、设计布局及响应事件。
  早期的JDK版本中提供了Java抽象窗口工具集(Abstract Window Toolkit,AWT),为程序员创建图形用户界面提供支持。后来的JDK版本中,又提供了功能更强的Swing。AWT组件定义在java.awt包中。Swing组件定义在javax.swing包中。AWT和Swing包含了部分对应的组件,例如,标签和按钮,在java.awt包中分别用Label和Button表示,而在javax.swing包中,则分别用JLabel和JButton表示,多数Swing组件以字母“J”开头。Swing组件与AWT组件最大的不同是Swing组件在实现时不包含任何本地代码,因此Swing组件可以不受硬件平台的限制,而具有更多的功能。
  基于AWT的界面可能会因运行平台的不同有略有差异,而基于Swing的界面在任何平台上的显示效果都是一致的。不包含本地代码的Swing组件被称为“轻量级”组件,而包含本地代码的AWT组件被称为“重量级”组件。
  当“重量级”组件与“轻量级”组件一同使用时,如果组件区域有重叠,则“重量级”组件总是显示在上面。在Java 2平台上推荐使用Swing组件。Swing组件比AWT组件拥有更多的功能,例如,Swing中的按钮和标签不仅可以显示文本信息,还可以显示图标,或同时显示文本和图标;大多数Swing组件都可以添加和修改边框;Swing组件的形状是任意的,而不仅局限于长方形。Java的图形用户界面由各种组件构成,组件是构成图形用户界面的基本元素。
  例如,按钮(JButton)、文本输入框(JTextField)、标签(JLabel)等都是组件。框架(Frame)、面板(Panel)等组件称为容器(Container),它们是特殊的组件,可以包含组件,各种组件(包括容器)可以通过add( )方法添加到容器中。Java语言为每种组件都定义了类,通过这些类或是它们的子类可以创建组件对象。通过相关方法可以对界面进行控制及响应。

03 容器

组件可以分为容器组件和非容器组件。所谓容器组件是指可以包含其他组件的组件,又分为顶层容器和一般用途容器。而非容器组件则必须要包含在容器中。显示在屏幕上的所有组件都必须包含在某个容器中,有些容器可以嵌套,在这个嵌套层次的最外层,必须是一个顶层容器。此外,还有一些容器是不能当作顶层容器的,例如,Jpanel和JscrollPane。Java为所有容器类定义了父类Container,容器的共有操作都定义在Container类中。
  顶层容器
  Swing中提供了4种顶层容器,分别为JFrame、JApplet、JDialog和JWindow。JFrame是一个带有标题行和控制按钮(最小化、恢复/最大化、关闭)的独立窗口,有时称为框架,创建应用程序时需要使用JFrame。创建小应用程序时使用JApplet,它被包含在浏览器窗口中。创建对话框时使用JDialog。JWindow是一个不带有标题行和控制按钮的窗口,通常很少使用。
  JFrame类常用的构造方法有以下几种。
  •JFrame( ):构造一个初始时不可见、无标题的新框架窗体。
  •JFrame(String title):创建一个初始时不可见、具有指定标题的新框架窗体。
  JFrame类中定义了一些相关方法,另外也从祖先类中继承了一些方法。常用的方法有以下几种。
  •void setBounds(intx,inty,intwidth,int height):移动并调整框架大小。左上角位置的横纵坐标分别由x和y指定,框架的宽高分别由width和height指定。
  •void setSize(intwidth,int height):设置框架的大小,宽度是width,高度是height。
  •void setBackground(Color bg):使用颜色bg设置框架的背景色。
  •void setVisible(booleanaFlag):设置框架可见或不可见。
  •void pack( ):调整框架的大小,以适合其子组件的首选大小和布局。
  •void setTitle(String title):设置框架的标题为字符串title。
  •Container getContentPane( ):返回此框架窗体的内容窗格对象。
  •void setLayout(LayoutManager manager):设置布局管理器。

04 实例演示&&代码

实例代码如下

package com.java.pc;
import java.awt.BorderLayout;

import javax.swing.*;

public class HelloWorld {
   public static void main(String args[])
   {
	   JFrame jframe=new JFrame("Demo");
	   JButton jbutton=new JButton("Hello World");
	  jframe.getContentPane().add(jbutton,BorderLayout.CENTER);
	  jframe.pack();
	  jframe.setVisible(true);
	  jframe.setDefaultCloseOperation(jframe.EXIT_ON_CLOSE);
	  
   }
}

最后运行效果如下图
在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值