Repetir imagem no fundo de um JPanel [RESOLVIDO]

0 respostas
W

Boa tarde pessoal,

Tenho um JPanel no qual eu sobrescrevo o método “paintComponent” e já consegui repetir o fundo nele por completo… Agora gostaria de repetir uma imagem apenas na horizontal para que pra baixo fiquem outras imagens que eu estou colocando. Pra mim que o método abaixo ta certo… O que estou fazendo errado?

@Override   
	public void paintComponent(Graphics g){  
		TexturePaint p = new TexturePaint(b,rect);  
		Graphics2D g2 = (Graphics2D) g;  
		g2.setPaint(p);  
		if(flag ==1){
			g2.fillRect(0,0,this.getWidth(),7);
			Image a = Toolkit.getDefaultToolkit().getImage("images/canto1.png");
			Image b = Toolkit.getDefaultToolkit().getImage("images/canto2.png");
			Image c = Toolkit.getDefaultToolkit().getImage("images/canto3.png");
			Image d = Toolkit.getDefaultToolkit().getImage("images/canto4.png");
			super.paintComponent(g);   
			g.drawImage(a,0,0, this );
			g.drawImage(b,(int) (getSize().getWidth()-11),0, this );
			g.drawImage(c,0,(int) (getSize().getHeight()/1.7)+11, this );
			g.drawImage(d, (int) (getSize().getWidth()-11), (int) (getSize().getHeight()/1.7)+11, this );
		}else
			g2.fillRect(0,0,this.getWidth(),this.getHeight());
	}

RESOLVI TROCANDO UMA LINHA DE LUGAR (oO):

@Override   
	public void paintComponent(Graphics g){  
		TexturePaint p = new TexturePaint(b,rect);  
		Graphics2D g2 = (Graphics2D) g;  
		g2.setPaint(p);  
		if(flag ==1){
			Image a = Toolkit.getDefaultToolkit().getImage("images/canto1.png");
			Image b = Toolkit.getDefaultToolkit().getImage("images/canto2.png");
			Image c = Toolkit.getDefaultToolkit().getImage("images/canto3.png");
			Image d = Toolkit.getDefaultToolkit().getImage("images/canto4.png");
			super.paintComponent(g);   
			g.drawImage(a,0,0, this );
			g.drawImage(b,(int) (getSize().getWidth()-11),0, this );
			g.drawImage(c,0,(int) (getSize().getHeight()/1.7)+11, this );
			g.drawImage(d, (int) (getSize().getWidth()-11), (int) (getSize().getHeight()/1.7)+11, this );
			g2.fillRect(0,0,this.getWidth(),7);
		}else
			g2.fillRect(0,0,this.getWidth(),this.getHeight());
	}
Criado 27 de julho de 2012
Respostas 0
Participantes 1