Desenhar Retangulo Java

1. Desenhar Retangulo Java

Fabrício Lisbôa Franco
fabregas

(usa Outra)

Enviado em 15/11/2012 - 22:30h

Estou fazendo um jogo de Damas em java usando swing, só q não to conseguindo pintar na Frame. Ai meu codigo:


package game;

import java.awt.Color;
import java.awt.Graphics;
import java.awt.image.BufferedImage;
import java.nio.Buffer;

import javax.swing.JFrame;
/* Aqui cria o frame junto c/ o metodo paintComponent()
para criar as img. Chamo o metodo dentro do construtor, e depois chamo a classe na Principal que vou postar a Diante :)

*/

public class Frame extends JFrame {

private final int size = 30, size2 = 15, sizep = 12;
private final int largura = size*8, altura = size*8;
BufferedImage imagebuffer;
Color cor = new Color(255,250,250);
private int x=0, y=0;

public Frame(){
super("Damas");
this.setSize(largura, altura);
this.setLayout(null);
this.getContentPane().setBackground(cor);
this.setVisible(true);

Criaretangulo();


this.setVisible(true);
}

public void Criaretangulo(){
// tam e tipo de cada retangulo
imagebuffer = new BufferedImage(size, size, BufferedImage.TYPE_INT_RGB);

// variavel de Graphics recebe o valor de imegebuffer, para desenhar em um espaço reservado de memória
Graphics grafico = imagebuffer.createGraphics();
// cor com a qual vai desenhar
grafico.setColor(Color.GRAY);
// desanhando retangulo preenchido de acordo c/ as posicoes x e y = 0
grafico.fillRect(x, y, size, size);
// desenha outro quadrado em outra posicao
grafico.setColor(Color.GRAY);
grafico.fillRect(size, size, size, size);

this.setVisible(true);

}
}





package game;
/* Classe Principal que chama o Frame */
public class Principal {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Frame frm = new Frame();

}
}



Me ajudem pfvr, preciso terminar isso. Obrigado !!!













  


2. Re: Desenhar Retangulo Java

Mariana Ribeiro Mendes
meldenne

(usa Linux Mint)

Enviado em 16/11/2012 - 20:41h

setVisible() é para exibir os elementos do JFrame. Lá no seu criaRetangulo(), você está utilizando a java 2D, então você utiliza o repaint() que está na Graphics para 'desenhar' na tela e não o setVisible().

=D






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts