在JLabel显示一张图片,当按下向右的键时,图片向右移动。
时间: 2023-06-24 13:08:24 浏览: 68
你可以使用如下的代码来实现:
```java
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
public class ImageMove extends JFrame implements KeyListener {
private JLabel label;
private int x = 0;
public ImageMove() {
setTitle("Image Move");
setSize(500, 500);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setResizable(false);
setLocationRelativeTo(null);
setLayout(null);
label = new JLabel();
label.setIcon(new ImageIcon("image.jpg"));
label.setBounds(x, 0, 100, 100);
add(label);
addKeyListener(this);
setFocusable(true);
}
@Override
public void keyPressed(KeyEvent e) {
if (e.getKeyCode() == KeyEvent.VK_RIGHT) {
x += 10;
label.setBounds(x, 0, 100, 100);
}
}
@Override
public void keyTyped(KeyEvent e) {
}
@Override
public void keyReleased(KeyEvent e) {
}
public static void main(String[] args) {
new ImageMove().setVisible(true);
}
}
```
这个程序创建了一个JFrame窗口,并在其中添加了一个JLabel组件,用于显示一张图片。当用户按下向右的键时,程序会改变图片的位置,使其向右移动。要使这个程序能够响应键盘事件,需要实现KeyListener接口,并在程序中添加KeyListener对象。
阅读全文