Damas com paint

2 respostas
F

Ola galera, fiz um jogo de Dama com swing,mas não fiquei muito contente com o impacto gráfico,agora quero usar o paint.Inclusive ja existe um tópico até parecido ,o qual, eu mesmo ja havia aberto tempo atrás.O exemplo que me tinha sido dado era até legal, mas queria colocar um pouco mais de O.O. O código abaixo fui eu que fiz mas acho que esta faltando mais Orientação Objeto.Lá vão as dúvidas;

1)se o tabuleiro é um JComponente ,as pecas também o são?
2)è certo fazer a classe Jogo estender um JFrame?
3)As pecas deveriam ser atributos do tabuleiro?Acho que sim
4)Se continuar nessa lógica como faço para redenser as pecas em caso de movimento?Devo usar um repaint dentro de tabuleiro?

import java.awt.Color;
import java.awt.Graphics;

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

import java.awt.Graphics2D;
import java.awt.event.*;
import javax.swing.*;

class Peca {
    int x;
    int y;
    Peca(Color c){
     }
 }


class Tabuleiro extends JComponent{
     int x_posinicio=70;
     int y_posinicio=100;
     private String st_tabuleiro[][];
     Tabuleiro(){
     }
  
  public void paint(Graphics g){
    
       int k=x_posinicio;
       int r=y_posinicio;
           g.drawRect(70,100,240,240);
           g.setColor(Color.WHITE);
            g.fillRect(70,100,240,240);
             for(int y=100;y<=310;y=y+30){
                   for(int x=70;x<310;x=x+30){
                        if( ((x+y)/2)%2 == 0 ){
                             g.setColor(Color.black);
                             g.fillRect(x, y, 30, 30);
                       }
                     
                   }
            }
       
       
       
  }
}

class Homem{
    Peca[] peca;
    String tabuleiro[][];

}
class Maquina implements Runnable{
    Peca[] peca;
   public void run(){

}

public class Jogo extends JFrame implements ActionListener,MouseListener{
private JButton jbu_jogar;
private Tabuleiro jp_tabuleiro; 

      

      public void insereButtonPlay(){
             jbu_jogar=new JButton("play");
             jbu_jogar.setBounds(350,100,70,30);
             jbu_jogar.addActionListener(this);
             add(jbu_jogar);
       }
       public void insereTabuleiro(){
        jp_tabuleiro=new Tabuleiro();
        add(jp_tabuleiro);
        addMouseListener(this);
          
       }
    
 
    
       
     
 public Jogo(){
      insereButtonPlay();
      insereTabuleiro();
      setSize(500,500);
      setVisible(true);
      setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
 }
 

 public static void main(String...a){

     Jogo j=new Jogo();
   
     
  
}
 public void jogo(){
     
 }

    public void actionPerformed(ActionEvent e) {
         if(e.getSource()==jbu_jogar)
             JOptionPane.showMessageDialog(null,"oi");
    }

    public void mouseClicked(MouseEvent e) {
       JOptionPane.showMessageDialog(null,"x"+   e.getX()+ "y "+   e.getY());
       
    }

    public void mousePressed(MouseEvent e) {
       
    }

    public void mouseReleased(MouseEvent e) {
       
    }

    public void mouseEntered(MouseEvent e) {
     
    }

    public void mouseExited(MouseEvent e) {
     
    }
}

valeu turma!

2 Respostas

ViniGodoy

Faz o seguinte… segue esse tutorial:
http://www.cokeandcode.com/node/6

E depois que tudo se iluminar, a gente conversa. :wink:

F

ok valeu :smiley:

Criado 5 de agosto de 2008
Ultima resposta 5 de ago. de 2008
Respostas 2
Participantes 2