Seria possivel fazer uma jtable com um Combobox sendo uma celula ?
Sim, seria. Contudo seria possivel com uma Jtable dinamica ou seja a cada linha adicionada criaria-se uma nova combobox em uma determinada coluna?
So encontrei exemplo com tabelas pré-definidas e staticas.
Obrigado Camaradas
Help!!!
Help!!
Tem diversos exemplos aqui:
http://www.exampledepot.com/egs/javax.swing.table/ComboBox.html
http://java.sun.com/docs/books/tutorial/uiswing/components/table.html
Para que isso funcione, simplesmente adicione o JComboBox como default editor do tipo de dados da sua coluna. Isso é bem trivial de se fazer.
Vini este exemplos eu ja tinha visto, tentei fazer uma jtable dinamica e comboBox varia de acordo com as escolhas do usuario , bom na verdade eu uso a jtable com comboBox para mostrar o resultado da escolha do usuario primeiramente eu criei uma jdialog com uma multlist depois do usuario selecionar suas opções jogo em jTable de [n][2] a cada nova escolha do usuario crio uma nova linha e na segunda coluna fica comboBox com os itens selecionados por ele que pode ser 1 || 40.
Obrigado Camarada
Alguém tem alguma ideia!
Vlw
Posta teu código, é muito difícil imaginar o que você fez.
[code]public class jDialogOdontograma extends javax.swing.JDialog {
private Paint jpImagem1 = null;
private Paint jpImagem2 = null;
private Object[] modelDoenças = null;
private Object modelDente = null;
/** Creates new form iframeOdontograma */
public jDialogOdontograma(java.awt.Frame parent, boolean modal) {
super(parent, modal);
jpImagem1 = new Paint("Imagem/odontograma.bmp");
jpImagem2 = new Paint("Imagem/odontograma2.bmp");
initComponents();
jPOdontograma.add(jpImagem1);
jPOdontograma2.add(jpImagem2);
jTDenteDoença.getColumnModel().getColumn(0).setPreferredWidth(150);
jTDenteDoença.getColumnModel().getColumn(1).setPreferredWidth(400);
}
public URL createURL(String path) {
ClassLoader cl = this.getClass().getClassLoader();
java.net.URL url = cl.getResource(path);
if (url != null) {
//JOptionPane.showMessageDialog(this, url.getPath());
return url;
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
}
public void addLinha(Object[] doencas, Object dente) {
DefaultTableModel model = (DefaultTableModel) jTDenteDoença.getModel();
Object[] info = new Object[2];
info[0] = dente;
info[1] =(String) doencas[0];
for (int i = 1; i < doencas.length; i++) {
String string = (String) doencas[i];
info[1] = info[1] + " , " + string;
}
model.addRow(info);
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
jTDenteDoença = new javax.swing.JTable();
jBSair = new javax.swing.JButton();
jPOdontograma = new javax.swing.JPanel();
jPOdontograma2 = new javax.swing.JPanel();
jButton1 = new javax.swing.JButton();
jButton2 = new javax.swing.JButton();
jButton3 = new javax.swing.JButton();
jButton4 = new javax.swing.JButton();
jCBDentes = new javax.swing.JComboBox();
jLabel1 = new javax.swing.JLabel();
jLabel2 = new javax.swing.JLabel();
jCBQuadrante = new javax.swing.JComboBox();
jBok = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
setTitle("Odontograma");
jScrollPane1.setName("jScrollPane1"); // NOI18N
jTDenteDoença.setModel(new javax.swing.table.DefaultTableModel(
new Object [][] {
},
new String [] {
"Dente (Triadam)", "Doenças"
}
));
jTDenteDoença.setEnabled(false);
jTDenteDoença.setName("jTDenteDoença"); // NOI18N
jTDenteDoença.getTableHeader().setReorderingAllowed(false);
jScrollPane1.setViewportView(jTDenteDoença);
jBSair.setText("cancelar");
jBSair.setName("jBSair"); // NOI18N
jBSair.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBSairActionPerformed(evt);
}
});
jPOdontograma.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
jPOdontograma.setName("jPOdontograma"); // NOI18N
javax.swing.GroupLayout jPOdontogramaLayout = new javax.swing.GroupLayout(jPOdontograma);
jPOdontograma.setLayout(jPOdontogramaLayout);
jPOdontogramaLayout.setHorizontalGroup(
jPOdontogramaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 933, Short.MAX_VALUE)
);
jPOdontogramaLayout.setVerticalGroup(
jPOdontogramaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 244, Short.MAX_VALUE)
);
jPOdontograma2.setBorder(javax.swing.BorderFactory.createEmptyBorder(1, 1, 1, 1));
jPOdontograma2.setName("jPOdontograma2"); // NOI18N
javax.swing.GroupLayout jPOdontograma2Layout = new javax.swing.GroupLayout(jPOdontograma2);
jPOdontograma2.setLayout(jPOdontograma2Layout);
jPOdontograma2Layout.setHorizontalGroup(
jPOdontograma2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 257, Short.MAX_VALUE)
);
jPOdontograma2Layout.setVerticalGroup(
jPOdontograma2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 424, Short.MAX_VALUE)
);
jButton1.setText("Apagar");
jButton1.setName("jButton1"); // NOI18N
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton1ActionPerformed(evt);
}
});
jButton2.setText("Salvar");
jButton2.setName("jButton2"); // NOI18N
jButton3.setText("Apagar");
jButton3.setName("jButton3"); // NOI18N
jButton3.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jButton3ActionPerformed(evt);
}
});
jButton4.setText("Salvar");
jButton4.setName("jButton4"); // NOI18N
jCBDentes.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "----" }));
jCBDentes.setName("jCBDentes"); // NOI18N
jCBDentes.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jCBDentesActionPerformed(evt);
}
});
jLabel1.setText("Selecione o dente:");
jLabel1.setName("jLabel1"); // NOI18N
jLabel2.setText("Quadrante:");
jLabel2.setName("jLabel2"); // NOI18N
jCBQuadrante.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Selecionar:", "Superior direito", "Superior esquerdo", "Inferior esquerdo", "Inferior direito" }));
jCBQuadrante.setName("jCBQuadrante"); // NOI18N
jCBQuadrante.addItemListener(new java.awt.event.ItemListener() {
public void itemStateChanged(java.awt.event.ItemEvent evt) {
jCBQuadranteItemStateChanged(evt);
}
});
jBok.setText("ok");
jBok.setName("jBok"); // NOI18N
jBok.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBokActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPOdontograma2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
.addComponent(jButton4, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addComponent(jButton3, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 196, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jLabel2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jCBQuadrante, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(jLabel1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jCBDentes, 0, 85, Short.MAX_VALUE))
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 362, javax.swing.GroupLayout.PREFERRED_SIZE)))
.addGroup(layout.createSequentialGroup()
.addComponent(jBok)
.addGap(81, 81, 81)))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 43, Short.MAX_VALUE))
.addComponent(jPOdontograma, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(jButton2, javax.swing.GroupLayout.DEFAULT_SIZE, 69, Short.MAX_VALUE)
.addComponent(jButton1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
.addComponent(jBSair, javax.swing.GroupLayout.Alignment.TRAILING))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jPOdontograma, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addComponent(jButton3)
.addGap(18, 18, 18)
.addComponent(jButton4))
.addComponent(jPOdontograma2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
.addGroup(layout.createSequentialGroup()
.addGap(4, 4, 4)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jLabel2)
.addComponent(jCBQuadrante, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addComponent(jLabel1)
.addComponent(jCBDentes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 317, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jBok)))
.addContainerGap())
.addGroup(layout.createSequentialGroup()
.addComponent(jButton1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jButton2)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 575, Short.MAX_VALUE)
.addComponent(jBSair)
.addGap(39, 39, 39))))
);
pack();
}// </editor-fold>
private void jBSairActionPerformed(java.awt.event.ActionEvent evt) {
dispose();
}
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
jpImagem1.setControl(false);
jpImagem1.repaint();
}
private void jButton3ActionPerformed(java.awt.event.ActionEvent evt) {
jpImagem2.setControl(false);
jpImagem2.repaint();
}
private void jCBQuadranteItemStateChanged(java.awt.event.ItemEvent evt) {
/*
* Falta acertar a seleção dos dentes(----)
*/
Object[] dentes;
DefaultComboBoxModel modeloDente = null;
switch (jCBQuadrante.getSelectedIndex()) {
case 1:
dentes = new Object[]{"----", 101, 102, 103, 104, 105, 106, 107, 108, 109, 110};
modeloDente = new DefaultComboBoxModel(dentes);
jCBDentes.setModel(modeloDente);
break;
case 2:
dentes = new Object[]{"----", 201, 202, 203, 204, 205, 206, 207, 208, 209, 210};
modeloDente = new DefaultComboBoxModel(dentes);
jCBDentes.setModel(modeloDente);
break;
case 3:
dentes = new Object[]{"----", 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311};
modeloDente = new DefaultComboBoxModel(dentes);
jCBDentes.setModel(modeloDente);
break;
case 4:
dentes = new Object[]{"----", 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411};
modeloDente = new DefaultComboBoxModel(dentes);
jCBDentes.setModel(modeloDente);
break;
default:
dentes = new Object[]{"----"};
modeloDente = new DefaultComboBoxModel(dentes);
jCBDentes.setModel(modeloDente);
break;
}
}
private void jCBDentesActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if (!(jCBDentes.getSelectedItem().equals("----"))) {
modelDente = jCBDentes.getSelectedItem();
modelDoenças = MultipleDoenças.novoDoenca(this);
/*
* teste apenas para visualização das doenças
* APAGAR QUANDO PROJETO PRONTO
*/
if (modelDoenças != null) {
for (int i = 0; i < modelDoenças.length; i++) {
System.out.println(modelDoenças[i]);
}
addLinha(modelDoenças, modelDente);
}
}
}
private void jBokActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here
}
// Variables declaration - do not modify
private javax.swing.JButton jBSair;
private javax.swing.JButton jBok;
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JButton jButton3;
private javax.swing.JButton jButton4;
private javax.swing.JComboBox jCBDentes;
private javax.swing.JComboBox jCBQuadrante;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JPanel jPOdontograma;
private javax.swing.JPanel jPOdontograma2;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JTable jTDenteDoença;
// End of variables declaration
}[/code]
[code]public class Paint extends javax.swing.JPanel {
BufferedImage image;
private int pointCount = 0;
private Point points[] = new Point[1000000];
boolean control = true;
public void setControl(Boolean control) {
this.control = control;
}
/*
- mandar string com caminho para desenhar
- reaproveitando o codigo
/
/* Creates new form Paint */
public Paint(String path) {
initComponents();
super.setBackground(Color.WHITE);
super.setBorder(BorderFactory.createLineBorder(Color.BLACK));
addMouseMotionListener(
new MouseMotionAdapter() {
@Override
public void mouseDragged(MouseEvent event) {
if (pointCount < points.length) {
points[pointCount] = event.getPoint();
pointCount++;
repaint();
}
}
});
try {
//Image image = new ImageIcon(pb.getImage()).getImage();
image = ImageIO.read(createURL(path));
} catch (IOException ex) {
System.out.println("Problema ao carregar imagem: " + ex.getMessage());
}
this.setSize(image.getWidth()+4,image.getHeight()+4);
}
@Override
public void paintComponent(Graphics g) {
if (control) {
super.paintComponent(g);
g.drawImage(image, 0, 0, this);
super.setSize(image.getWidth()+4, image.getHeight()+4);
for (int i = 0; i < pointCount; i++) {
g.setColor(Color.BLACK);
g.fillOval(points[i].x, points[i].y, 4, 4);
}
} else {
super.paintComponent(g);
g.drawImage(image, 0, 0, this);
super.setSize(image.getWidth(this), image.getHeight(this));
pointCount = 0;
control = true;
}
}
public URL createURL(String path) {
ClassLoader cl = this.getClass().getClassLoader();
java.net.URL url = cl.getResource(path);
if (url != null) {
//JOptionPane.showMessageDialog(this, url.getPath());
return url;
} else {
System.err.println("Couldn't find file: " + path);
return null;
}
}
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
this.setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 400, Short.MAX_VALUE)
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGap(0, 300, Short.MAX_VALUE)
);
}// </editor-fold>
// Variables declaration - do not modify
// End of variables declaration
}[/code]
[code]public class MultipleDoenças extends javax.swing.JDialog {
private DefaultListModel modelDisponivel = new DefaultListModel();
private DefaultListModel modelSelecionados = new DefaultListModel();
Object[] doenças = null;
public static Object[] novoDoenca(JDialog frame) {
MultipleDoenças pane = new MultipleDoenças(frame, true, "Selecionar doenças");
return pane.doenças;
}
/** Creates new form MultipleDoenças */
public MultipleDoenças(java.awt.Frame parent, boolean modal) {
super(parent, "Lista de doenças", modal);
initComponents();
carregarComponentes();
//colarjList.setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
//copyjList.setSelectionMode(ListSelectionModel.SINGLE_INTERVAL_SELECTION);
}
private MultipleDoenças(JDialog frame, boolean b, String titulo) {
super((Frame) frame.getOwner(), titulo, b);
initComponents();
carregarComponentes();
this.setResizable(true);
this.setLocationRelativeTo(frame);
this.setVisible(true);
}
/** This method is called from within the constructor to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
jScrollPane1 = new javax.swing.JScrollPane();
lisDisponiveis = new javax.swing.JList();
jScrollPane2 = new javax.swing.JScrollPane();
lisSelecionados = new javax.swing.JList();
addJButton = new javax.swing.JButton();
removeJButton = new javax.swing.JButton();
jBConfirma = new javax.swing.JButton();
jBCancelar = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
jScrollPane1.setName("jScrollPane1"); // NOI18N
lisDisponiveis.setName("lisDisponiveis"); // NOI18N
jScrollPane1.setViewportView(lisDisponiveis);
jScrollPane2.setName("jScrollPane2"); // NOI18N
lisSelecionados.setMaximumSize(new java.awt.Dimension(133, 544));
lisSelecionados.setName("lisSelecionados"); // NOI18N
lisSelecionados.setPreferredSize(new java.awt.Dimension(133, 544));
jScrollPane2.setViewportView(lisSelecionados);
addJButton.setText(">>>");
addJButton.setName("addJButton"); // NOI18N
addJButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
addJButtonActionPerformed(evt);
}
});
removeJButton.setText("<<<");
removeJButton.setName("removeJButton"); // NOI18N
removeJButton.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
removeJButtonActionPerformed(evt);
}
});
jBConfirma.setText("Confirmar");
jBConfirma.setName("jBConfirma"); // NOI18N
jBConfirma.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBConfirmaActionPerformed(evt);
}
});
jBCancelar.setText("Cancelar");
jBCancelar.setName("jBCancelar"); // NOI18N
jBCancelar.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
jBCancelarActionPerformed(evt);
}
});
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 170, Short.MAX_VALUE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 16, Short.MAX_VALUE)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(addJButton)
.addComponent(removeJButton))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 177, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addComponent(jBCancelar)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(jBConfirma)))
.addContainerGap())
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(53, 53, 53)
.addComponent(addJButton)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addComponent(removeJButton))
.addGroup(layout.createSequentialGroup()
.addContainerGap()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
.addComponent(jScrollPane2, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.DEFAULT_SIZE, 149, Short.MAX_VALUE)
.addComponent(jScrollPane1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 149, javax.swing.GroupLayout.PREFERRED_SIZE))
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(jBConfirma)
.addComponent(jBCancelar))))
.addContainerGap())
);
pack();
}// </editor-fold>
private void addJButtonActionPerformed(java.awt.event.ActionEvent evt) {
Object[] itensSel = lisDisponiveis.getSelectedValues();
int contItem = itensSel.length;
Arrays.sort(itensSel);
for (int i = 0; i < contItem; i++) {
Arrays.sort(itensSel);
modelSelecionados.addElement(itensSel[i]);
modelDisponivel.removeElement(itensSel[i]);
}
ordenarModel(modelSelecionados);
lisDisponiveis.setModel(modelDisponivel);
lisSelecionados.setModel(modelSelecionados);
}
private void removeJButtonActionPerformed(java.awt.event.ActionEvent evt) {
Object[] itensSel = lisSelecionados.getSelectedValues();
int contItem = itensSel.length;
for (int i = 0; i < contItem; i++) {
modelSelecionados.removeElement(itensSel[i]);
modelDisponivel.addElement(itensSel[i]);
}
ordenarModel(modelDisponivel);
lisDisponiveis.setModel(modelDisponivel);
lisSelecionados.setModel(modelSelecionados);
}
private void jBCancelarActionPerformed(java.awt.event.ActionEvent evt) {
this.dispose();
}
private void jBConfirmaActionPerformed(java.awt.event.ActionEvent evt) {
doenças = new Object[modelSelecionados.size()];
for (int i = 0; i < modelSelecionados.size(); i++) {
doenças[i] = modelSelecionados.get(i);
}
this.dispose();
}
/*Metodo para ordenar Lista de doenças
*
*/
public void ordenarModel(DefaultListModel model) {
Object[] itensSele = new Object[model.getSize()];
for (int i = 0; i < model.getSize(); i++) {
itensSele[i] = model.get(i);
}
model.removeAllElements();
Arrays.sort(itensSele);
for (int i = 0; i < itensSele.length; i++) {
model.addElement(itensSele[i]);
}
}
private void carregarComponentes() {
String[] strings = {"Bolsa periodontal em mm", "Retração gengival em mm", "Exposição de furca grau I", "Exposição de furca grau II", "Exposição de furca grau III", "Hiperplasia gengival", "Mobilidade dental grau I", "Mobilidade dental grau II", "Mobilidade dental grau III", "Gengivite grau I", "Gengivite grau II", "Gengivite grau III", "Placa grau I", "Placa grau II", "Placa grau III", "Cálculo grau I", "Cálculo grau II", "Cálculo grau III", "Ausência de dente", "Fratura dental", "Exposição de polpa", "Dente supra-numerário", "Giro-versão", "Apinhamento dental", "Desgaste", "Escurecimento dental", "Erosão de esmalte", "Hipoplasia de esmalte", "Lesão de reabsorção", "Cárie", "Dente não erupcionado", "Persistência de decíduo", "Lesão de palato", "Dente extraído"};
for (int i = 0; i < strings.length; i++) {
modelDisponivel.addElement(strings[i]);
}
ordenarModel(modelDisponivel);
lisDisponiveis.setModel(modelDisponivel);
}
/**
* @param args the command line arguments
*/
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
MultipleDoenças dialog = new MultipleDoenças(new javax.swing.JFrame(), true);
dialog.addWindowListener(new java.awt.event.WindowAdapter() {
public void windowClosing(java.awt.event.WindowEvent e) {
System.exit(0);
}
});
dialog.setVisible(true);
}
});
}
// Variables declaration - do not modify
private javax.swing.JButton addJButton;
private javax.swing.JButton jBCancelar;
private javax.swing.JButton jBConfirma;
private javax.swing.JScrollPane jScrollPane1;
private javax.swing.JScrollPane jScrollPane2;
private javax.swing.JList lisDisponiveis;
private javax.swing.JList lisSelecionados;
private javax.swing.JButton removeJButton;
// End of variables declaration
}[/code]