📅  最后修改于: 2023-12-03 15:13:35.030000             🧑  作者: Mango
AWT(Abstract Window Toolkit)是Java平台中用于创建图形用户界面(GUI)的一套类库。本教程将介绍AWT的基础知识以及如何使用AWT来构建GUI。
AWT中的所有GUI组件都位于java.awt包中。下面是一些常用的组件:
AWT事件处理可以分为两种方式:
下面是第一种方式的示例代码:
import java.awt.*;
import java.awt.event.*;
public class MyButton extends Frame implements ActionListener {
private Button btn;
public MyButton() {
btn = new Button("Click Me!");
btn.addActionListener(this);
add(btn);
setSize(200, 200);
setVisible(true);
}
public void actionPerformed(ActionEvent evt) {
System.out.println("Button Clicked!");
}
public static void main(String[] args) {
new MyButton();
}
}
上面的示例代码演示了创建一个按钮并添加事件监听器。其中重写了ActionListener
接口的actionPerformed
方法,实现按钮被点击时的响应。
下面是第二种方式的示例代码:
import java.awt.*;
import java.awt.event.*;
public class MyButton2 extends Frame {
private Button btn;
public MyButton2() {
btn = new Button("Click Me!");
btn.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent evt) {
System.out.println("Button Clicked!");
}
});
add(btn);
setSize(200, 200);
setVisible(true);
}
public static void main(String[] args) {
new MyButton2();
}
}
上面的示例代码使用了匿名内部类实现了事件监听器。其中,通过创建ActionListener
的实例并在实例中重写actionPerformed
方法,实现了按钮被点击时的响应。
AWT提供了几种布局管理器,可以方便地布置GUI组件。下面是一些常用的布局管理器:
下面是一个使用BorderLayout
的示例代码:
import java.awt.*;
public class MyBorderLayout extends Frame {
public MyBorderLayout() {
Button btn1 = new Button("North");
Button btn2 = new Button("West");
Button btn3 = new Button("Center");
Button btn4 = new Button("East");
Button btn5 = new Button("South");
setLayout(new BorderLayout());
add(btn1, BorderLayout.NORTH);
add(btn2, BorderLayout.WEST);
add(btn3, BorderLayout.CENTER);
add(btn4, BorderLayout.EAST);
add(btn5, BorderLayout.SOUTH);
setSize(300, 300);
setVisible(true);
}
public static void main(String[] args) {
new MyBorderLayout();
}
}
上面的示例代码演示了如何使用BorderLayout
将5个按钮放置在5个区域中。
AWT提供了一组绘图工具,可以用于绘制简单的图形。下面是一个绘制矩形的示例代码:
import java.awt.*;
public class MyGraphics extends Frame {
public MyGraphics() {
setSize(300, 300);
setVisible(true);
}
public void paint(Graphics g) {
g.drawRect(50, 50, 100, 100);
}
public static void main(String[] args) {
new MyGraphics();
}
}
上面的示例代码演示了如何在Frame
中绘制一个矩形。其中,paint
方法被重写,通过Graphics
对象的drawRect
方法绘制一个矩形。
本教程介绍了AWT的基础知识、组件、事件处理、布局管理器和绘图等方面的内容。希望可以帮助读者了解AWT并使用它构建GUI。