キー押下をリッスンしながらウィンドウ内で画像を前後に移動させることができます。これを実装するには、Swing タイマーとキー バインディングの組み合わせが必要です。
これを実現するには、次の手順に従います。
たとえば、上記の手順を実装する簡略化された Java コード スニペットを次に示します。
import java.awt.*; import java.awt.event.*; import javax.swing.*; public class MovingImage extends JPanel implements KeyListener { // Set the image's initial position private int x = 100; private int y = 100; public MovingImage() { // Add the KeyListener to the panel addKeyListener(this); // Set the size of the panel setPreferredSize(new Dimension(500, 500)); setBackground(Color.white); } @Override public void paintComponent(Graphics g) { super.paintComponent(g); // Draw the image at the current position g.drawImage(myImage, x, y, null); } @Override public void keyPressed(KeyEvent e) { // Handle keypress events for moving the image int key = e.getKeyCode(); if (key == KeyEvent.VK_LEFT) { x -= 10; } else if (key == KeyEvent.VK_RIGHT) { x += 10; } else if (key == KeyEvent.VK_UP) { y -= 10; } else if (key == KeyEvent.VK_DOWN) { y += 10; } // Repaint the panel to update the image's position repaint(); } // Implement other KeyListener methods (keyReleased and keyTyped) if needed public static void main(String[] args) { JFrame frame = new JFrame("Moving Image"); frame.add(new MovingImage()); frame.pack(); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.setVisible(true); } }
必ず調整してください。特定の要件に応じて、キーコードと画像描画の詳細を確認します。キー バインドを利用すると、特定のキーを割り当てて、左、右、上、下などの画像の動きを制御できます。
以上がJava でキープレス コントロールを使用して画像をアニメーション化する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。