Sinalizador de Banco de Dados

2 respostas
tiagocampos65

ola novamente..
Estou com um problema.
Estou fazendo uma aplicação e queria colocar um farol (semafaro de transito) para indicar a situação do banco de dados.
No caso estou usando duas figuras.
Uma com o sinal vermelho aceso e outra com o sinal verde.
O sistema inicia com o sinal vermelho, e depois que vc conectar ao banco, então substitui-se a figura pela que tem o farol verde.

O problema é que eu não estou conseguindo fazer essa substituição

fiz o seguinte no meu código

Classe Frame

Fiz um array de imagens, com as duas imagens.
String nomesImagens[] = {"D:/Cadastro de Produtos (Lupercio)/sinalizador2.gif", "D:/Cadastro de Produtos (Lupercio)/sinalizador.gif"};

Depois criei um metodo para manipular o array

public void recebeImage(int image){
		this.image = image;
		//return image;
	}

ai passei a imagem para o JLabel assim

l_recebesinalizadorSQL.setIcon(new ImageIcon(nomesImagens[ image ]));

A CLASSE DA CONEXÃO ESTA ASSIM.

package cp;

import java.sql.Connection;
import java.sql.DriverManager;


import javax.swing.JLabel;



public class ConexaoDB {
	
	private CadastroProdutos cd = null; // classe da frame
	//CadastroProdutos cd = new CadastroProdutos();	 
	
	public Connection conectaBD() {	
		try{
			Class.forName("com.mysql.jdbc.Driver");
			//cd.recebeImage(0);
		
			}catch(ClassNotFoundException cnfe){
				System.out.println("Não achei o driver");
				System.out.println(cnfe.getMessage());
				//cd.recebeImage(1);		
				
		}
			
		Connection MinhaConexao = null;	
				
		try{
			MinhaConexao =  DriverManager.getConnection("jdbc:mysql://localhost:3306/","root","root");
			System.out.println("Conectado com mysql");
			cd.recebeImage(0);
		}catch(Exception cnfe){
			System.out.println("Erro: não conectado ao mysql");
			//cd.recebeImage(1);	
			//cd.recebeImage("D:/Cadastro de Produtos (Lupercio)/sinalizador2.gif");
		}						
		return MinhaConexao;
	}

}

Onde eu criei uma variavel da Classe da frame que é a cadastra produtos e depois nos try cacth eu fui tentando manipular a imagem do Array.

porque que não da certo?

2 Respostas

fantomas

Uma hipótese.

Acho que vc esqueceu de incluir a execução da substituição da imagem, vc apenas alterou o indice do array.

try{ MinhaConexao = DriverManager.getConnection("jdbc:mysql://localhost:3306/","root","root"); System.out.println("Conectado com mysql"); cd.recebeImage(0); // <----------------<< Aqui vc alterou o indice do array. // Aqui vc precisa executar o código que substitui a imagem, lembra do setIcon(new ImageIcon(nomesImagens....? }catch(Exception cnfe){ System.out.println("Erro: não conectado ao mysql"); //cd.recebeImage(1); //cd.recebeImage("D:/Cadastro de Produtos (Lupercio)/sinalizador2.gif"); }

Observe as anotações que fiz no seu código.

flws

tiagocampos65

é… mas eu to fazendo isso na classe CadastroProdutos

pensei nisso, mas ainda não consegui fazer isso.

Como é que eu faço ?

Criado 12 de abril de 2009
Ultima resposta 13 de abr. de 2009
Respostas 2
Participantes 2