java GUI之基本图形

1.为了支持图形用户界面程序设计,java1.0的标准类库中包含一个抽象窗口工具箱(Abstract Window Toolkit,AWT).

这个工具箱极不成熟,其编程模型也不是面向对象的,有很大的局限性.为此,java1.2最终决定放弃AWT中的GUI,而是添加了一个Swing库.

Swing组件不仅可以完全替代AWT组件,而且提供了更多的复杂组件.

必须注意GUI程序设计是,不能混用AWT组件和Swing组件(例如不能将javax.swing.JList添加到java.awt.Frame中).所用Swing组件的类名以字母J开头,以区别AWT组件.

注意:Swing是基于AWT架构之上的,它没有完全替代AWT.

创建框架:

 1 import java.awt.Container;
 2
 3 import javax.swing.JButton;
 4 import javax.swing.JFrame;
 5
 6 public class FrameDmo {
 7     public static void main(String[] args) {
 8         JFrame frame = new JFrame("测试JFrame");
 9         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//框架关闭时结束运行
10         frame.setSize(500, 300);//设置框架大小
11         frame.setVisible(true);//显示框架
12     }
13 }

setDefaultCloseOperation()告诉程序关闭当前框架时应该做什么.JFrame.Exit_ON_CLOSE就是告诉程序关闭程序是结束运行.否则关闭框架后,程序没有结束运行.

创建框架后,就可以添加组件了

 1 import java.awt.Container;
 2
 3 import javax.swing.JButton;
 4 import javax.swing.JFrame;
 5
 6 public class FrameDmo {
 7     public static void main(String[] args) {
 8         JFrame frame = new JFrame("测试JFrame");
 9         JButton button=new JButton("按钮");
10         //取得框架的内容窗格
11         Container container=frame.getContentPane();
12         //将框架添加到框架的内容窗格中
13         container.add(button);
14         //框架关闭时结束运行
15         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
16         //设置框架大小
17         frame.setSize(500, 300);
18         //显示框架
19         frame.setVisible(true);
20     }
21 }

java SE5之前,如果要将某个组件添加到框架中,必须首先调用类JFrame中的getContentPane取得框架的内容窗格,

然后通过该内容窗格调用方法add将组件添加到内容窗格中.例如上面的例子.

内容窗格委托.

 1 import javax.swing.JButton;
 2 import javax.swing.JFrame;
 3
 4 public class FrameWithButton1 extends JFrame {
 5     public FrameWithButton1(){
 6         JButton button=new JButton("按钮");
 7         add(button);//javaSE5之后采用
 8     }
 9     public static void main(String[] args) {
10         FrameWithButton1 frame=new FrameWithButton1();
11         frame.setTitle("将一个按钮添加到框架中");
12         frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
13         frame.setSize(500,300);
14         frame.setVisible(true);
15     }
16 }

需要将组件添加到其内容窗格的容器有JFrame,JDialog,JApplet,JInternalFrame,jWindow.

时间: 2024-10-29 19:11:12

java GUI之基本图形的相关文章

第14篇-JAVA GUI编程

第14篇-JAVA GUI编程 每篇一句 :道路一开始开辟的时候总是存在障碍的 初学心得: 原本下定决心才能开始的事情也变得理所当然 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-25| JAVA GUI编程 ] 1.什么是界面 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面 与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受 2.Java 基础类 JFC 的基本

JAVA GUI 工具

Java GUI图形界面开发工具 上大学那会儿比较主流的Java图形开发插件是:Visual Editor 和 SWT Designer, 不久又出了个Jigloo, 但去官网看了下发现这个东西也很久没有更新了,不过据说短小精悍,五脏俱全.SWT Designer不久前也被Google收购后重新整合进自己的产品中,然后开源了,现在名字叫:WindowBuilder Pro,看上去界面组件很丰富强大的样子,支持Swing, AWT, SWT, 以及Google自家的GWT等等. 目前JAVA图形界

Java GUI编程中AWT/swing/SWT的优缺点

http://www.cnblogs.com/dugang/archive/2010/10/22/1858478.html AWT AWT是Abstract Window Toolkit(抽象窗口工具包)的缩写,是SUN专门针对Java GUI编程提供的最早的也是最初的开发工具包,用来建立和设置Java图形用户界面,这个工具包提供了一套与本地图形界面交互的接口.AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系(peers).也就是说,当我们利用 AWT 来构件图形用户界面的时

java之十一 Java GUI

窗口基本原理 AWT根据类的层次定义窗口,并在每一层添加了特定的功能.在这些窗口中,用得最普遍的是在小应用程序派生于Panel类的窗口和派生于Frame类的独立窗口.这些窗口的功能大多数来自于它们的父类.因此,与Panel和Frame这两个类相关的类结构的描述是我们理解它们的基础.在图11-1中展示了Panel和Frame类的结构.现在让我们分别来看一下这些类. 组件(Component) 在AWT类层次结构的顶部是Component类. Component类是一个封装了一个可视组件的所有属性的

JAVA GUI

JAVA GUI中的事件处理: 委托事件模型:事件源对象和监听器对象具有绑定关系 一个监听器可以绑定多个事件源 一个事件源也可以绑定多个监听器 监听器有各自监听的事件类型 设置容器的布局管理器为空白布局管理器时,注意设置组件的位置和大小以免出现组件显示不出来的问题:设置容器的布局管理器为流布局管理器时,下拉列表的输入框设置为可编辑时会默认扩大下拉列表的输入框长度,另外可以通过设置一个字符串内容为空格字符串的标签调整其他组件的位置,特别的对于文本框组件来说可以通过setColumns()方法调整文

JAVA GUI编程学习笔记目录

1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之GUI编程窗体事件 6.JAVA之GUI编程Action事件 7.JAVA之GUI编程鼠标事件 8.JAVA之GUI编程键盘码查询器 9.JAVA之GUI编程列出指定目录内容 10.JAVA之GUI编程弹出对话框Dialog 11.JAVA之GUI编程菜单 12.JAVA之GUI编程打开与保存文件 13.JAVA之GUI编程将程序打包jar JA

Java GUI 基础 Eight Puzzle (拼图游戏)

很简单使用java GUI 制作一个简单的拼图游戏 // main package HW1; import java.io.IOException; import javax.swing.Icon; import javax.swing.ImageIcon; import javax.swing.JFrame; import javax.swing.JLabel; public class HW1 extends JFrame{ /** * */ public HW1_0586(String s

20140314 java练习题-打印各种图形

1.打印直角三角形 import java.util.Scanner; public class AgeDemo { public static void main(String[] args){ //打印一个倒立的直角三角形如下: //**** //*** //** //* Scanner sc = new Scanner(System.in); System.out.println("请输入边长:"); int a = sc.nextInt(); for(int j=a;j>

Java -GUI开发九九乘法表

Java GUI开发九九乘法表 (1)实现目标: 利用java自带的awt包,基础控件开发一个九九乘法表,点击可以显示对应的乘法口诀. (2)控件选择: 点击--Button 显示--TextField (3)界面设计:总体设计布局 (4)主窗体编写 将程序在屏幕中央区显示 1 /*窗口居中显示*/ 2 int Win_width=fr.getWidth(); 3 int Win_Height=fr.getHeight(); 4 Toolkit kit = Toolkit.getDefaultT