280、编写一个小程序,允许用户输入 drawOval 方法所需的四个参数,然后使用这四个输入值绘制一个椭圆。
要实现这个小程序,首先要创建一个小程序类,该类继承自 JApplet 。在类中需要有接收用户输入的组件,比如 JTextField ,让用户输入 drawOval 方法所需的四个参数。接着,在 paint 方法里获取用户输入的值,并使用这些值调用 Graphics 类的 drawOval 方法来绘制椭圆。以下是一个简单示例代码:
import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
public class DrawOvalApplet extends JApplet {
private JTextField xField, yField, widthField, heightField;
private int x, y, width, height;
public void init() {
// 创建文本框用于用户输入
xField = new JTextField(5);
yField = new JTextField(5);
widthField = new JTextField(5);
heightField = new JTextField(5);
// 创建按钮
JButton drawButton = new JButton("Draw Oval");
// 添加事件监听器
drawButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
try {
// 获取用户输入的值
x = Integer.parseInt(xField.getText());
y = Integer.parseInt(yField.getText());
width = Integer.parseInt(widthField.getText());
height = Integer.parseInt(heightField.getText());
// 重绘小程序
repaint();
} catch (NumberFormatException ex) {
JOptionPane.showMessageDialog(null, "请输入有效的整数!");
}
}
});
// 创建面板并添加组件
JPanel panel = new JPanel();
panel.add(new JLabel("X:"));
panel.add(xField);
panel.add(new JLabel("Y:"));
panel.add(yField);
panel.add(new JLabel("Width:"));
panel.add(widthField);
panel.add(new JLabel("Height:"));
panel.add(heightField);
panel.add(drawButton);
// 将面板添加到小程序
add(panel, BorderLayout.NORTH);
}
public void paint(Graphics g) {
super.paint(g);
// 绘制椭圆
g.drawOval(x, y, width, height);
}
}
将上述代码保存为 DrawOvalApplet.java 文件,编译后可以使用 appletviewer 或在 HTML 文件中嵌入小程序来运行。
281、a) 小程序(Applet)的哪个方法用于将图像加载到小程序中?b) 图形(Graphics)的哪个方法用于在小程序上显示图像?c) Java 提供了两种在小程序中播放声音的机制——小程序的 play 方法和哪个接口的 play 方法?d) 什么是一种带有热点区域的图像,用户点击这些热点区域可以完成诸如加载网页之类的任务?e) ImageIcon 类的哪个方法用于显示 ImageIcon 的图像?f) Java 支持几种图像格式,包括哪些?
- a) getImage
- b) drawImage
- c) AudioClip
- d) 图像映射(image map)
- e) paintIcon
- f) 图形交换格式(GIF)、联合图像专家组(JPEG)、便携式网络图形(PNG)
Java图形与多媒体编程

最低0.47元/天 解锁文章

被折叠的 条评论
为什么被折叠?



