Importação JFrame

2 respostas
T

Bom dia a todos.
Estou com uma dúvida:
Tenho uma classe comboBox.java e uma outra JFrame qualquer.

Preciso importar esta comboBox.java para dentro do meu JPanel na classe JFrame.

Como faço isso?

Segue o código do comboBox:

package suporte;
import java.awt.GridLayout;
import java.util.ArrayList;

import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JFrame;

public class comboBox extends JFrame {
 Registrar reg = new Registrar();

 JComboBox combo = null;
 MyComboModel model = null;
 

public comboBox() {
 setLayout(new GridLayout(1,3));
 setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

 final ArrayList<String> ast = new ArrayList<String>();
 ast.add("Monitor");
 ast.add("Teclado");
 ast.add("Mouse");
 ast.add("Rede");
 ast.add("Internet");
 ast.add("Telefonia fixa");
 ast.add("Telefonia Movel");
 ast.add("Office");
 ast.add("Impressora");
 ast.add("Suporte Brassuco");
 ast.add("DataSul");
 ast.add("Est. Comercial");
 ast.add("Exactus");
 ast.add("IntraSystem");
 ast.add("InfoFisc");

 model = new MyComboModel(ast);

 combo = new JComboBox(model);

 getContentPane().add(combo);

 pack();
 }

 public static void main(String[] args) {
 new comboBox().setVisible(true);
 }
}


class MyComboModel extends DefaultComboBoxModel {

 private ArrayList<String> ast = null;

 public MyComboModel(ArrayList<String> ast) {
 this.ast = ast;
 }

 @Override
 
public Object getElementAt(int index) {
 return this.ast.get(index);
 }

 @Override
 public Object getSelectedItem() {
 return super.getSelectedItem();
 }

 @Override
 public int getSize() {
 return this.ast.size();
 }
}

E agora segue o código da classe JFrame:

package suporte;

/**
 *
 * @author THenrique
 */
public class Registrar extends javax.swing.JFrame {

 Banco bco = new Banco();

 public Registrar() {
 initComponents();
 }

 @SuppressWarnings("unchecked")
 // <editor-fold defaultstate="collapsed" desc="Generated Code">
 private void initComponents() {

 buttonGroup1 = new javax.swing.ButtonGroup();
 jPanel1 = new javax.swing.JPanel();
 jScrollPane2 = new javax.swing.JScrollPane();
 jTextArea1 = new javax.swing.JTextArea();
 jTextField1 = new javax.swing.JTextField();
 jLabel1 = new javax.swing.JLabel();
 jLabel2 = new javax.swing.JLabel();
 jLabel3 = new javax.swing.JLabel();
 jLabel4 = new javax.swing.JLabel();
 jButton1 = new javax.swing.JButton();
 jButton2 = new javax.swing.JButton();
 jTextField2 = new javax.swing.JTextField();
 jComboBox1 = new javax.swing.JComboBox();

 setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);

 jTextArea1.setColumns(30);
 jTextArea1.setLineWrap(true);
 jTextArea1.setRows(10);
 jScrollPane2.setViewportView(jTextArea1);

 jTextField1.addActionListener(new java.awt.event.ActionListener() {
 public void actionPerformed(java.awt.event.ActionEvent evt) {
 jTextField1ActionPerformed(evt);
 }
 });

 jLabel1.setText("Setor:");

 jLabel2.setFont(new java.awt.Font("Tahoma", 1, 11));
 jLabel2.setText("Problema:");

 jLabel3.setText("Assunto:");

 jLabel4.setText("Email:");

 jButton1.setText("Confirmar");
 jButton1.addActionListener(new java.awt.event.ActionListener() {
 public void actionPerformed(java.awt.event.ActionEvent evt) {
 jButton1ActionPerformed(evt);
 }
 });

 jButton2.setText("Limpar");

 jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));
 jComboBox1.addActionListener(new java.awt.event.ActionListener() {
 public void actionPerformed(java.awt.event.ActionEvent evt) {
 jComboBox1ActionPerformed(evt);
 }
 });

 javax.swing.GroupLayout jPanel1Layout = new javax.swing.GroupLayout(jPanel1);
 jPanel1.setLayout(jPanel1Layout);
 jPanel1Layout.setHorizontalGroup(
 jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 .addGroup(jPanel1Layout.createSequentialGroup()
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 .addGroup(jPanel1Layout.createSequentialGroup()
 .addGap(75, 75, 75)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
 .addComponent(jLabel1)
 .addComponent(jLabel3)
 .addComponent(jLabel4)
 .addComponent(jLabel2))
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 .addGroup(jPanel1Layout.createSequentialGroup()
 .addGap(50, 50, 50)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
 .addComponent(jTextField2, javax.swing.GroupLayout.DEFAULT_SIZE, 248, Short.MAX_VALUE)
 .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 185, javax.swing.GroupLayout.PREFERRED_SIZE)))
 .addGroup(jPanel1Layout.createSequentialGroup()
 .addGap(88, 88, 88)
 .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))))
 .addGroup(jPanel1Layout.createSequentialGroup()
 .addGap(320, 320, 320)
 .addComponent(jButton1)
 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 .addComponent(jButton2)))
 .addContainerGap(91, Short.MAX_VALUE))
 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
 .addContainerGap(102, Short.MAX_VALUE)
 .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 384, javax.swing.GroupLayout.PREFERRED_SIZE)
 .addGap(77, 77, 77))
 );
 jPanel1Layout.setVerticalGroup(
 jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
 .addGap(73, 73, 73)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
 .addComponent(jLabel3)
 .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
 .addGap(99, 99, 99)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
 .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
 .addComponent(jLabel1))
 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
 .addComponent(jLabel4)
 .addComponent(jTextField2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 18, Short.MAX_VALUE)
 .addComponent(jLabel2)
 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 172, javax.swing.GroupLayout.PREFERRED_SIZE)
 .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
 .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
 .addComponent(jButton2)
 .addComponent(jButton1))
 .addContainerGap())
 );

 jButton1.getAccessibleContext().setAccessibleName("btConfirmar");
 jButton2.getAccessibleContext().setAccessibleName("btLimparfrm");

 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()
 .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 .addContainerGap())
 );
 layout.setVerticalGroup(
 layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
 .addGroup(layout.createSequentialGroup()
 .addContainerGap()
 .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
 .addContainerGap())
 );

 pack();
 }// </editor-fold>

 private void jTextField1ActionPerformed(java.awt.event.ActionEvent evt) { 
// TODO add your handling code here:
 } 

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
} 

private void jComboBox1ActionPerformed(java.awt.event.ActionEvent evt) {
 }

 public static void main(String args[]) {
 java.awt.EventQueue.invokeLater(new Runnable() {

 public void run() {
 new Registrar().setVisible(true);
 }
 });
 }
 // Variables declaration - do not modify
 private javax.swing.ButtonGroup buttonGroup1;
 private javax.swing.JButton jButton1;
 private javax.swing.JButton jButton2;
 private javax.swing.JComboBox jComboBox1;
 private javax.swing.JLabel jLabel1;
 private javax.swing.JLabel jLabel2;
 private javax.swing.JLabel jLabel3;
 private javax.swing.JLabel jLabel4;
 private javax.swing.JPanel jPanel1;
 private javax.swing.JScrollPane jScrollPane2;
 private javax.swing.JTextArea jTextArea1;
 private javax.swing.JTextField jTextField1;
 private javax.swing.JTextField jTextField2;
 // End of variables declaration
}

2 Respostas

victorgilc

na classe Registrar tu digita:

ComboBox nomeQualquer = new ComboBox();

blz, ai tu instanciou a classe ComboBox, ok?

depois no panel

nomeQualquer.setVisible(true);

nomeQualquer.Pack();

panel.add(nomeQualquer);

Acho que é isso

italogustavo

Bom dia a todos!
Meu primeiro post, desejo a todos um Feliz 2011 com muita saúde e paz.

Gostaria que voces me ajudassem.
É o seguinte...
Tenho um JComboBox que carrega da entidade AliquotasIcms atraves de um jList que é relacionado a um JQuery e que o mesmo é relacionado ao EntityManager, apos eu vincular os dados com o Jlist, redenrizo ele desta forma para poder exibir a descricao da aliquota:

public class AliquotasListCellRenderer extends DefaultListCellRenderer {

    @Override
    public Component getListCellRendererComponent(
            JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
        super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
        if (value instanceof AliquotasIcms) {
            AliquotasIcms a = (AliquotasIcms) value;
            setText(a.getDescricao());
        }
        return this;

    }
}

até ai tudo bem, ele carrega tudo direitinho.

A JQuery contem a seguinte HQL: "FROM AliquotasIcms ORDER BY descricao;"

E Tenho a Entidade Produtos que eu carrego os dados via vinculacao com os jTextFields...

Para carregar os itens do JComboBox eu vinculo:
elements=list
selectedItem=Form[${registroAtual.codaliq}]

...

Mas como postei e preciso vincular o codaliq para quando eu abrir o form ele aparecer selecionado a descricao relacionado ao codaliq.

Grato desde já.

Criado 27 de dezembro de 2010
Ultima resposta 28 de dez. de 2010
Respostas 2
Participantes 3