İyinet'e Hoşgeldiniz!

Türkiye'nin En Eski Webmaster Forum'una Hemen Kayıt Olun!

Kayıt Ol!

Java ve Animasyon (Bölüm 2)

  • Konbuyu başlatan Kamil Kahraman
  • Başlangıç tarihi
K

Kamil Kahraman

Misafir
Eğer Java'da animasyon yapmak istiyorsanız, küçük denemelerle işe başlayabilirsiniz.

Grafiksel Kullanıcı Arayüzü (ing. Graphical User Interface; GUI), bilgisayarlarda işletilen komutlar ve bunların çıktıları yerine simgeler, pencereler, butonlar ve panellerin tümünü ifade etmek için kullanılan genel addır. Bugün oyun oynarken elimizdeki kumandayla nasıl uçaklarımızı, arabalarımızı istediğimiz yere hareket ettirebiliyorsak, aşağıda kullandığımız bir takım kodlarla da küçük bir buton çizip, klavye yön tuşlarıyla istediğimiz yere hareket ettirebiliriz..

Kolay gelsin ;)

PHP:
import java.awt.event.KeyEvent;
import java.awt.event.KeyListener;

import javax.swing.JButton;
import javax.swing.JFrame;


public class MyGui extends JFrame {
	
	JButton myButton = new JButton();
	/**
	 * 
	 */
	
	private static final long serialVersionUID = 1L;
	
	int x = 250;
	int y = 250;
	KeyEvents k;
	
	// Constructor
	public MyGui(){
		//butonun yeri ve boyunu ayarliyoruz.
		myButton.setSize(10,10);
		myButton.setLocation(250, 250);
		
		this.getContentPane().setLayout(lisanssız);
		
		// buton'a tuslara basildiginda tepki vermesi icin KeyEvents
		//ekliyoruz.
		myButton.addKeyListener(new KeyEvents());
		
		this.getContentPane().add(myButton);
		
	}
	
	
	// Inner calss to call the repaint method of the JPanel class
	/*private class Actions implements ActionListener {
		public void actionPerformed(ActionEvent e){
			repaint();
		}
	}
	*/

	private class KeyEvents implements KeyListener {
		
		
		public void keyPressed(KeyEvent evt){
			
			//yukari okuna bastiginda kare nin y degerini azaltiyor.
			if(evt.getKeyCode() == KeyEvent.VK_UP){
				myButton.setLocation(x, y - 20);
				System.out.println("yukari");
				y = (y - 20)%500;
			}

			//yukari okuna bastiginda kare nin y degerini arttiriyor.
			if(evt.getKeyCode() == KeyEvent.VK_DOWN){
				myButton.setLocation(x, y + 20);
				System.out.println("assagi");
				y = (y + 20)%500;
			}

			//yukari okuna bastiginda kare nin x degerini arttiriyor.
			if(evt.getKeyCode() == KeyEvent.VK_RIGHT){
				myButton.setLocation(x + 20, y);
				System.out.println("sag");
				x = (x + 20) %500;
			}
			//yukari okuna bastiginda kare nin x degerini azaltiyor.
			if(evt.getKeyCode() == KeyEvent.VK_LEFT){
				myButton.setLocation(x, y + 20);
				System.out.println("sol");
				x = (x - 20) %500;
			}
		}

		@Override
		public void keyReleased(KeyEvent e) {
			// TODO Auto-generated method stub
			
		}

		@Override
		public void keyTyped(KeyEvent e) {
			// TODO Auto-generated method stub
			
		}
	}
	

	public static void main(String []args){
		// Classimizi yaratiyoruz ve pencereyi olusturuyoruz.
		MyGui kare = new MyGui();
				
		kare.setSize(500, 500);
		kare.setResizable(false);
		kare.setVisible(true);
	}
	
	
	
}
 

Türkiye’nin ilk webmaster forum sitesi iyinet.com'da forum üyeleri tarafından yapılan tüm paylaşımlardan; Türk Ceza Kanunu’nun 20. Maddesinin, 5651 Sayılı Kanununun 4. maddesinin 2. fıkrasına göre, paylaşım yapan üyeler sorumludur.

Üst