JTable

9 respostas
W

ola a todos..... eu pesquisei todos os topicos que apresentaram ali em cima sobre o JTAble...
pesquisando esses topicos eu chegei ate aq....
minha j table ta assim.....

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



public class TelasInternasH extends JInternalFrame implements ActionListener
{
        
     public TelaPrincipal telaPrincipal;
     
     public GridBagConstraints gbc = new GridBagConstraints();
     
     public GridBagLayout GridBag = new GridBagLayout();
     
     public JPanel jpCentral = new JPanel(new GridBagLayout());//issu
     
     public JPanel jpBotoes = new JPanel(new GridLayout(1,6));//issu
     
     public JButton jbBotaoListar, jbBotaoCancelar, jbBotaoInserir, jbBotaoAlterar, jbBotaoLimpar, jbBotaoPesquiar, jbBotaoExcluir ;
     
     JTable Tabela;
     
     public TelasInternasH(String titulo, TelaPrincipal telaPrincipal) 
     {
        super("Cadastro De Clientes", true, true, true, true);

        
        Tabela = new JTable();
        JScrollPane Scroll = new JScrollPane();
        String[]Colunas = {"Segunda","Terca","Quarta","Quinta","Sexta","Sabado","Domingo"};
        //String[]Linhas = {"07:00","07:30"};
        DefaultTableModel Modelo = new DefaultTableModel(Colunas,31);
        Tabela.setModel(Modelo);
        Scroll.setViewportView(Tabela);
 //-----------------------cores das linhas -----------------------------------------       
        Tabela.setDefaultRenderer(Object.class, 
           new DefaultTableCellRenderer(){ 

           public Component getTableCellRendererComponent( 
              JTable table, Object value,boolean isSelected, 
              boolean hasFocus,int linha,int coluna){ 
           super.getTableCellRendererComponent(table,value, 
                isSelected,hasFocus,linha,coluna); 
              if (linha==0){ 
                 setBackground(new Color(255,255,255)); 
                 setForeground(Color.BLACK);   
              }else if (linha==1){ 
                  setBackground(new Color(239,237,239)); 
                  setForeground(Color.BLACK); 
              }else if (linha ==2){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==3 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==4 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==5 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==6){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==7 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==8 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==9 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha==10 ){ 
                  setBackground( new Color(239,237,239));
              }else if (linha==11){ 
                 setBackground(new Color(255,255,255)); 
                 setForeground(Color.BLACK);   
              }else if (linha==12){ 
                  setBackground(new Color(239,237,239));
              }else if (linha==13){ 
                  setBackground(new Color(255,255,255));
              }else if (linha ==14){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==15 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==16 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==17 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==18){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==19 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==20 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==21 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==22 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha ==23 ){ 
                  setBackground( new Color(177,177,177));
              }else if (linha ==24 ){ 
                  setBackground( new Color(185,185,185));
              }else if (linha==26){ 
                  setBackground( new Color(239,237,239));
              }else if (linha==27){ 
                 setBackground(new Color(255,255,255)); 
                 setForeground(Color.BLACK); 
                 }else if (linha==28 ){ 
                  setBackground( new Color(239,237,239));
              }else if (linha==29){ 
                 setBackground(new Color(255,255,255)); 
                 setForeground(Color.BLACK); 
                 }else if (linha==30 ){ 
                  setBackground( new Color(239,237,239));
              }else if (linha==31){ 
                 setBackground(new Color(255,255,255)); 
                 setForeground(Color.BLACK);  
              }else { 
                 setBackground(null); 
                 setForeground(null); 
              } 
              return this; 
        } 

     }); 
//-----------------------------------------------------------------------------
//Criar o painel de Scroll com a Tabela 
   Scroll = new JScrollPane(Tabela); 
//Acertando o tamanho do painel de scroll(com JTable) 
   Scroll.setBounds(30,30,300,339); 
//Adicionando o painel de scroll na tela 
   this.setLayout(null);//Informa que vou organizar a janela 

        setLayout(new BorderLayout());
        getContentPane().add(Scroll, BorderLayout.CENTER);//issu
        getContentPane().add(jpBotoes, BorderLayout.SOUTH);//issu
        
 
        ImageIcon imageOK         = new ImageIcon("OK.png");
        ImageIcon imageCancel     = new ImageIcon("delete.png");
        ImageIcon imageLixeira    = new ImageIcon("lixeira.png");
        ImageIcon imagePesquisar  = new ImageIcon("pesquisar.png");
        ImageIcon imageLimpar     = new ImageIcon("limpar.png");
        ImageIcon imageAlterar    = new ImageIcon("atualizar.png");
        
        jbBotaoInserir  = new JButton(imageOK);
        jbBotaoAlterar  = new JButton(imageAlterar);
        jbBotaoLimpar   = new JButton(imageLimpar);
        jbBotaoListar   = new JButton(imagePesquisar);
        jbBotaoExcluir  = new JButton(imageLixeira);
        jbBotaoCancelar = new JButton(imageCancel);
        
        //inserindo os botoes no jpBotoes
        
        jpBotoes.add(jbBotaoInserir);
        jpBotoes.add(jbBotaoAlterar);
        jpBotoes.add(jbBotaoLimpar);
        jpBotoes.add(jbBotaoExcluir);
        jpBotoes.add(jbBotaoListar);
        jpBotoes.add(jbBotaoCancelar);
        
        jbBotaoExcluir.setEnabled(false);//issu
        jbBotaoListar.setEnabled(false);//issu
        jbBotaoLimpar.setEnabled(false);//issu
        jbBotaoAlterar.setEnabled(false);//issu
        
        this.telaPrincipal = telaPrincipal;
        telaPrincipal.jdPane.add(this);
        
        jbBotaoCancelar.addActionListener(this);
        
        setSize(700 ,500);
        setVisible(true);
     }
     
      public void actionPerformed(ActionEvent e){
    	
        if (e.getSource() == jbBotaoCancelar) {
  	       int i = JOptionPane.showConfirmDialog(null, "Deseja Realmente Sair Sem Concluir o Agendamento?", "Saída", JOptionPane.YES_NO_OPTION);  
           if (i == JOptionPane.YES_OPTION)
               setVisible(false);
            else   
               repaint();  
        }
     }
     
     public void addElemento(int x, int y, int altura, int largura, Component comp, JPanel painel)
     {
        
          gbc.gridx = x;
          gbc.gridy = y;
          gbc.gridwidth = largura;
          gbc.gridheight= altura;
          GridBag.setConstraints((Component)comp,gbc);
          painel.add(comp, gbc);
          
     }
}

mais só esta faltando 1 coisa agora para ela ficar como eu qeria... q é assim :
[img]http://www.andima.com.br/certificacao/img/horarios/2-6_8-12_14-18.gif[/img]

entao.. a unica coisa que falta é definir os horarios ... só que é esse o meu problemA.... na pesquisa naum consegui faser issu... algem pode me ajudar???

vlws..

9 Respostas

W

ngm pra m dar uma força???

Gobain

Olá!
Dei uma pesquisada por row headers no google e aachei esse link
http://www.chka.de/swing/table/row-headers/

Não sei se vai resolver, mas de uma olhada lá.

W

intaum cara,… eu até tava pensando q era uma coisa mais simples… naum entendi direito oq o tutorial q vc m mando tava dizendo naum…
a unica coisa q eu qeria era colocar os horarios na tabela como titulo nas linhas entende…
do geito q ta na figura… vlwsss

Gobain

Então, a idéia é exatamente o q vc quer. Colocar headers (q são os nomes das colunas) nas linhas também. Daí busquei no google por row headers.
Eu não cheguei a testar o q te passei, então é mais pela idéia mesmo.

W

é issu mesmo q eu qero… mais vlw pela ajuda… espero q mais algem possa dar alguma dica… xD~

enquanto issu vo tentando resolver esse problema…

P

Você deseja que a primeira linha da Tabela contenha os horários?

É isso?

W

issu…eu desejo q a tabela fique como a da figura… q os horarios fiqem em umacoluna… mais naum como campo… entende::

vlws

P

Perguntei errado!

A primeira coluna da Tabela conterá os horários, né!?

OK!

E depois!?

Como vai preencher a Tabela?

A princípio a tabela terá essa cara, depois de preencheremos seus dados?

É isso?

Vamos resolver esta parada agora!

W

é issu aew… vc pode me ajudar??

Criado 16 de outubro de 2008
Ultima resposta 21 de out. de 2008
Respostas 9
Participantes 3