java图形设计典型例题程序
### Java图形设计典型例题程序解析 #### 一、aFrame——基本的Frame窗口 **知识点:** - **Frame类**: Java AWT 包中的 `Frame` 类是用于创建图形用户界面 (GUI) 的基本窗口类。 - **setSize()方法**: 用于设置窗口的宽度和高度。 - **setBackground()方法**: 设置窗口的背景颜色。 - **setVisible()方法**: 设置窗口是否可见。 **代码分析**: ```java import java.awt.*; public class a { public static void main(String[] agrs) { Frame fm1 = new Frame("Hello"); fm1.setSize(400, 300); fm1.setBackground(Color.gray); fm1.setVisible(true); } } ``` - 这段代码创建了一个名为“Hello”的 `Frame` 对象,并设置了它的大小为400x300像素,背景颜色为灰色,最后使窗口可见。 #### 二、bFramePanel——包含多个Panel的Frame **知识点:** - **Panel类**: `Panel` 类在Java AWT包中用于创建容器,可以包含其他组件。 - **setLayout()方法**: 用于设置容器的布局管理器。 - **null布局**: 当使用 `setLayout(null)` 时,意味着容器将不使用任何内置的布局管理器,需要手动设置每个组件的位置和大小。 - **add()方法**: 用于向容器添加组件。 **代码分析**: ```java import java.awt.*; public class b { public static void main(String[] agrs) { Frame fm1 = new Frame("Hello"); Panel pn1 = new Panel(); Panel pn2 = new Panel(); Panel pn3 = new Panel(); fm1.setSize(400, 350); fm1.setBackground(Color.gray); fm1.setLayout(null); pn1.setSize(100, 100); pn1.setBackground(Color.red); pn1.setLocation(0, 50); pn2.setSize(100, 100); pn2.setBackground(Color.yellow); pn2.setLocation(100, 150); pn3.setSize(100, 100); pn3.setBackground(Color.green); pn3.setLocation(200, 250); fm1.add(pn1); fm1.add(pn2); fm1.add(pn3); fm1.setVisible(true); } } ``` - 这段代码创建了一个名为“Hello”的 `Frame` 对象,并在其中添加了三个不同颜色的 `Panel` 组件,每个面板的位置和大小都通过 `setLocation()` 和 `setSize()` 方法手动设置。 #### 三、cFowLayout——使用FlowLayout布局的Frame **知识点:** - **FlowLayout**: 是一种简单的布局管理器,它按添加顺序从左到右排列组件。 - **build()方法**: 通常用于构建GUI界面的方法。 - **pack()方法**: 自动调整容器的大小,以适应所有子组件的最佳尺寸。 **代码分析**: ```java import java.awt.*; public class c { public static void main(String[] agrs) { MyFrame f1 = new MyFrame(); f1.build(); } } class MyFrame { private Frame f; private Button b1, b2, b3; void build() { f = new Frame("FlowLayout"); f.setBackground(Color.gray); f.setLayout(new FlowLayout(FlowLayout.LEFT, 10, 20)); b1 = new Button("button1"); b2 = new Button("button2"); b3 = new Button("button3"); f.add(b1); f.add(b2); f.add(b3); f.setVisible(true); f.pack(); // 自动调整窗口大小 } } ``` - 这段代码创建了一个名为“FlowLayout”的 `Frame` 对象,并设置了FlowLayout布局管理器,其中三个按钮被添加到窗口中。使用 `pack()` 方法自动调整窗口大小以适应按钮的最佳尺寸。 #### 四、dBorderLayout——使用BorderLayout布局的Frame **知识点:** - **BorderLayout**: 布局管理器,用于在容器的北、南、东、西和中间五个位置放置组件。 **代码分析**: ```java import java.awt.*; public class d { public static void main(String[] agrs) { MyFrame f1 = new MyFrame(); f1.build(); } } class MyFrame { private Frame f; private Button b1, b2, b3, b4, b5; void build() { f = new Frame("BorderLayout"); f.setSize(200, 200); f.setBackground(Color.gray); b1 = new Button("button1"); b2 = new Button("button2"); b3 = new Button("button3"); b4 = new Button("button4"); b5 = new Button("button5"); f.add(b1, BorderLayout.NORTH); f.add(b2, BorderLayout.SOUTH); f.add(b3, BorderLayout.WEST); f.add(b4, BorderLayout.EAST); f.add(b5, BorderLayout.CENTER); f.setVisible(true); } } ``` - 这段代码创建了一个名为“BorderLayout”的 `Frame` 对象,并设置了BorderLayout布局管理器,其中五个按钮分别放置在北、南、东、西和中间位置。 #### 五、eBorderPanel——使用BorderLayout布局的Panel **知识点:** - **BorderLayout与Panel**: 可以在Panel中使用BorderLayout来控制其内部组件的布局。 **代码分析**: 由于提供的代码片段不完整,这里假设接下来的代码类似于上面的dBorderLayout示例,只是将Frame替换为了Panel。这同样展示了如何在一个 `Panel` 内部使用 `BorderLayout` 来组织其内部的组件。 以上就是对这些Java图形设计典型例题程序的主要知识点和代码分析。通过这些示例,你可以更好地理解Java AWT库中的基本GUI组件及其布局管理方式。
import java.awt.*;
public class a{
public static void main(String[] agrs){
Frame fm1 = new Frame("Hello");
fm1.setSize(400,300);
fm1.setBackground(Color.gray);
fm1.setVisible(true);
}
}
//------1-b Frame 与 Panel ---------
import java.awt.*;
public class b{
public static void main(String[] agrs){
Frame fm1 = new Frame("Hello");
Panel pn1 = new Panel();
Panel pn2 = new Panel();
Panel pn3 = new Panel();
fm1.setSize(400,350);
fm1.setBackground(Color.gray);
fm1.setLayout(null);
pn1.setSize(100,100);
pn1.setBackground(Color.red);
pn1.setLocation(0,50);
pn2.setBackground(Color.yellow);
pn2.setLocation(100,150);
pn3.setSize(100,100);
pn3.setBackground(Color.green);
pn3.setLocation(200,250);
fm1.add(pn1);
fm1.add(pn2);
fm1.add(pn3);
fm1.setVisible(true);
}
}
//--------1-c FowLayout 布局管理器-------------
import java.awt.*;
public class c{
public static void main(String[] agrs){
MyFrame f1 = new MyFrame();
f1.build();
}
}
class MyFrame {
private Frame f ;
private Button b1,b2,b3 ;
void build(){
剩余25页未读,继续阅读
- 粉丝: 0
- 资源: 1
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助