设计如下界面,在界面上方有一个标签“I’m a able”,中间有一个随机颜色的圆形,下方有两个按钮,点击点击“change lable”后标签改变为“ouch!”。点击“change circle”后圆改变颜色。
时间: 2024-03-10 15:50:46 浏览: 16
以下是一个实现该界面的示例代码,使用了Java Swing库:
```java
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Random;
import javax.swing.BorderFactory;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
public class Main {
public static void main(String[] args) {
JFrame frame = new JFrame("GUI Demo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
JPanel panel = new JPanel() {
private static final long serialVersionUID = 1L;
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
Random rand = new Random();
g.setColor(new Color(rand.nextInt(256), rand.nextInt(256), rand.nextInt(256)));
g.fillOval(50, 50, 100, 100);
}
@Override
public Dimension getPreferredSize() {
return new Dimension(200, 200);
}
};
panel.setBorder(BorderFactory.createLineBorder(Color.BLACK));
JLabel label = new JLabel("I'm able");
label.setHorizontalAlignment(JLabel.CENTER);
JButton changeLabelButton = new JButton("Change label");
changeLabelButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
label.setText("Ouch!");
}
});
JButton changeCircleButton = new JButton("Change circle");
changeCircleButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
panel.repaint();
}
});
JPanel buttonPanel = new JPanel();
buttonPanel.add(changeLabelButton);
buttonPanel.add(changeCircleButton);
frame.add(panel, "Center");
frame.add(label, "North");
frame.add(buttonPanel, "South");
frame.pack();
frame.setVisible(true);
}
}
```
运行该程序后,会弹出一个包含随机颜色的圆形、标签和两个按钮的界面。点击“Change label”按钮后,标签会变为“Ouch!”;点击“Change circle”按钮后,圆形的颜色会随机改变。