java窗口中放置按钮和带图标的标签,点击按钮,改变标签上的图标和文本。
时间: 2023-07-16 10:17:00 浏览: 148
可以通过使用Java Swing库来实现这个功能。下面是一个简单的例子:
```java
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class ChangeIconLabel extends JFrame implements ActionListener {
private JLabel label;
private JButton button;
public ChangeIconLabel() {
setTitle("Change Icon Label");
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// 创建一个标签,并设置初始图标和文本
ImageIcon icon = new ImageIcon("icon.png");
label = new JLabel("Hello, World!", icon, JLabel.CENTER);
label.setVerticalTextPosition(JLabel.BOTTOM);
label.setHorizontalTextPosition(JLabel.CENTER);
label.setOpaque(true);
label.setBackground(Color.WHITE);
// 创建一个按钮,并注册事件监听器
button = new JButton("Change Icon");
button.addActionListener(this);
// 将标签和按钮添加到窗口中
getContentPane().add(label, BorderLayout.CENTER);
getContentPane().add(button, BorderLayout.SOUTH);
pack();
setLocationRelativeTo(null);
}
// 实现 ActionListener 接口的 actionPerformed 方法
public void actionPerformed(ActionEvent e) {
// 在按钮被点击时,改变标签上的图标和文本
ImageIcon newIcon = new ImageIcon("newIcon.png");
label.setIcon(newIcon);
label.setText("Goodbye, World!");
}
public static void main(String[] args) {
ChangeIconLabel frame = new ChangeIconLabel();
frame.setVisible(true);
}
}
```
在这个例子中,我们首先创建了一个带有初始图标和文本的标签。然后创建了一个按钮,并在该按钮上注册了一个事件监听器。当按钮被点击时,我们在标签上改变了图标和文本。最后将标签和按钮添加到窗口中,并显示出来。
注意,我们使用了 `ImageIcon` 类来加载图标文件,并将其设置为标签的图标。在 `actionPerformed` 方法中,我们创建了一个新的 `ImageIcon` 对象,并将其设置为标签的新图标。然后修改了标签的文本,以显示新的消息。
阅读全文