JTable dados de banco e mais JProgress bar

12 respostas
tiagocampos65

Boa tarde,
estou precisando faze uma aplicação, porém estou com dificuldades em colocar uma tabela que tenha dados vindos do banco, e mais uma progress bar em outra coluna.
Criar a tabela com os dados do banco eu até consegui, mas quando tem que colocar o JProgressBar ai está dando um pouco de trabalho.

O código para montar a tabela é este ai.

public class TabelaFuncionario extends AbstractTableModel{
		private List linhas;
		private String[] colunas;
		public TabelaFuncionario(List dados, String[] nomeColumas){
			setLinhas(dados);
			setColunas(nomeColumas);
			
		}
		   @Override  
		   public int getColumnCount() {  
		      int tamanho = colunas.length;  
		      return tamanho;  
		   }  
		  
		   @Override  
		   public int getRowCount() {  
		      int tamanho = linhas.size();  
		      return tamanho;  
		   }  
		  
		   @Override  
		   public Object getValueAt(int linha, int coluna) {  
		      Object value = null;  
		      final Funcionarios c = (Funcionarios) linhas.get(linha);  
		      switch(coluna){  
		      case 0:   
		         value = c.getIdFuncionario();  
		         break;  
		      case 1:  
		         value = c.getUsuario();  
		         break;  
		      case 2:  
		         value = c.getNome();  
		         break;  
		      case 3:  
		         value = c.getEndereco(); 
		         break;  
		      case 4:  
		         value = c.getTelefone();  
		         break;
		      case 5:
		    	  value = c.getTelefone2();
		    	  break;
		      case 6:
		    	  if(c.getTipoFuncionario() == 0){
		    		  value = "Entregador";
		    	  }else
		    	  {
		    		  value = "Expedidor";
		    	  }
		    	  break;
		      case 7:
		    	  if(c.getAdm() == 0){
		    		  value = "Não";
		    	  }else{
		    		  value = "Sim";
		    	  }
		    	  break;
		    	  
		      
		         }  
		      return value;  
		   }  
		     
		   public Funcionarios getClientes(int line){  
		      Funcionarios c = (Funcionarios) linhas.get(line);  
		      return c;  
		   }  
		     
		   @Override  
		   public boolean isCellEditable(int r, int c){  
		      boolean pode = false;  
		      return pode;  
		   }  
		     
		   @Override  
		   public String getColumnName(int num){  
		      String nome = colunas[num];  
		      return nome;  
		   }  
		  
		   public List getLinhas() {  
		      return linhas;  
		   }  
		  
		   public void setLinhas(List linhas) {  
		      this.linhas = linhas;  
		   }  
		  
		   public String[] getColunas() {  
		      return colunas;  
		   }  
		  
		   public void setColunas(String[] colunas) {  
		      this.colunas = colunas;  
		   }
		  

	}

12 Respostas

berg.pb

blz tiago
mas qual é a sua dificuldade?

erico_kl

você quer colocar um JProgressBar em uma coluna da JTable? Isso?

tiagocampos65

isso mesmo, eu preciso colocar um JProgressBar, a utilização que eu vou ter nessa progressbar nem tem tanta importancia, o problema é colocar uma coluna a mais com essa progressbar.

o esquema é ter primeira coluna (nome do funcionario vindo do banco de dados) e mais uma coluna com a progress bar. essa ultima coluna é minha dificuldade.

berg.pb

mas essa progress bar vai servir pra q?
num jeito de utilizar ou coisa, pq progress bar numa coluna fica meio ‘diferente’!!!

erico_kl

Dê uma olhada aqui

tiagocampos65

eu vou utilizar essa progress bar para medir um status de tempo, vamos supor que o funcionario tenha 20 minutos para realizar essa tarefa, esse progress bar ira recolhendo conforme o tempo for acabando.

erico_kl

mas não sei se herdar de DefaultTableCellRenderer seria uma boa opção…
já ouvi falar que todos os “DefaultAlgumaCoisa” do java são ruins, no caso da TableModel todo mundo sabe, mas não sei se vale pra CellRenderer também…

Ironlynx

tiagocampos65, para juntar uma Progress bar também vai depender de como vc tá organizando o seu layout.


eu vou utilizar essa progress bar para medir um status de tempo, vamos supor que o funcionario tenha 20 minutos para realizar essa tarefa, esse progress bar ira recolhendo conforme o tempo for acabando.

Thiago, não tô entendendo uma coisa:
O seu model trará N dados de N funcionários.O funcionário irá ver que está sendo controlado, ou na verdade isso é um controle tipo do Admin da aplicação?(Irá aparecer Dados-Progresso) de Todos os funcionários?Claro, vc pode criar uma lista no seu table model que receba os tipos de dados de seus funcionários do BD, e uma progress bar, mas eu preciso entender melhor o que você quer.

tiagocampos65

Na verdade, se trata praticamente de um controle de trafego, onde um funcionario fica responsavel de monitorar esses outros funcionarios, que saem da loja para fazer entregas, eu precisava de uma tela que mostrasse o tempo restante para o funcionario voltar a loja, e então achei legal colocar uma progress bar para facilitar a leitura.

erico_kl

o link não adiantou?

Ironlynx

Agora que eu vi o link do erico, tiago, o link não serviu para vc?

E tiago, se tratando de “tempo para voltar ao trabalho”, eu acharia muito melhor que fosse o tempo mesmo(numérico) que fosse mostrado do que uma progress bar.Um timer cairia bem aí…

tiagocampos65

ah. sim, um timer funcionario perfeitamente, fica mais dificil visualizar, como a tela vai ter uns 30 desses exibindo ao mesmo tempo, é muito mais facil colocar uma progress bar para ver quem ja está estourando o tempo, o não. se for para ficar comparando numeros, ficara mais dificil.

Estou tentando usar aquele codigo do erico, mais não estou tendo muito sucesso por enquanto.

Criado 7 de setembro de 2010
Ultima resposta 8 de set. de 2010
Respostas 12
Participantes 4