JTextField valor Monetario

7 respostas
Eduardo_Rebou_s

Olá galera tudo bom?

então estou com uma duvida de como setar o jTextField para valores monetarios,
ex:

0,00
0,01
0,12
1,23

procurando pela internet já achei varios Monetario(), MonetarioDocument(), porém nenhum funciona, não sei se é porque uso o NetBeans ou não estou sabendo fazer.

esse é o meu codigo Monetario

import javax.swing.text.AttributeSet;
import javax.swing.text.BadLocationException;
import javax.swing.text.PlainDocument;
import javax.swing.text.SimpleAttributeSet;

/**
 *
 * @author Eduardo
 */
public class Monetario extends PlainDocument {

    private static final long serialVersionUID = -3802846632709128803L;
    private static final SimpleAttributeSet nullAttribute =
            new SimpleAttributeSet();

    public void insertString(int offs, String str, AttributeSet a)
            throws BadLocationException
    {
        String original = getText(0,getLength());

        //Permite apenas digitar até 16 caracteres (9.999.999.999,99)
        if (original.length()< 16)
        {
            StringBuffer mascarado = new StringBuffer();
            if(a != nullAttribute)
            {
                //limpa o campo
                remove(-1,getLength());

                mascarado.append((original+str).replaceAll("[0-9]",""));
                for (int i = 0; i < mascarado.length(); i++)
                {
                    if(!Character.isDigit(mascarado.charAt(1)))
                    {
                        mascarado.deleteCharAt(i);
                    }
                }
                Long number = new Long(mascarado.toString());

                mascarado.replace(0, mascarado.length(), number.toString());

                if ( mascarado.length() < 3)
                {
                    if( mascarado.length() == 1)
                    {
                        mascarado.insert(0,"0");
                        mascarado.insert(0,",");
                        mascarado.insert(0,"0");
                    } else if ( mascarado.length() == 2)
                    {
                        mascarado.insert(0,",");
                        mascarado.insert(0,"0");
                    }
                }else{
                    mascarado.insert(mascarado.length()-2,",");
                }

                if ( mascarado.length() > 6)
                {
                    mascarado.insert(mascarado.length()-6, ".");
                    if ( mascarado.length() > 10)
                    {
                        mascarado.insert(mascarado.length()-10, ".");
                        if ( mascarado.length() > 14)
                        {
                            mascarado.insert(mascarado.length() -14, ".");
                        }
                    }
                }
                super.insertString(0,mascarado.toString(), a);
            }else
            {
                if (original.length() == 0)
                {
                    super.insertString(0, "0,00", a);
                }
            }
        }
    }

    @Override
    public void remove(int offs, int len) throws BadLocationException
    {
        if (len == getLength())
        {
            super.remove(0, len);
            if (offs != -1)
            {
                insertString(0, "", nullAttribute);
            }
        }else
        {
            String original = getText(0, getLength()).substring(0, offs)
                    + getText(0, getLength()).substring(offs+len);
            super.remove(0, getLength());
            insertString(0,original,null);
        }
    }

}

até ai acredico que tudo bem, ai tenho um jFrame que foi criado pelo proprio NetBeans(estou aprendendo ainda e estou usando o proprio programa para criar as telas)

quando seto o jTextField para o Monetario()

jFTextValorHora.setDocument(new Monetario());

(o jTextField foi criado pelo proprio NetBeans)

ai quando executo o form da esse erro:

Exception in thread AWT-EventQueue-0 java.lang.NullPointerException

at projetos1.forms.ProjetoProfissionais.(ProjetoProfissionais.java:25)

at projetos1.forms.ProjetoProfissionais$5.run(ProjetoProfissionais.java:314)

at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:235)

at java.awt.EventQueue.dispatchEvent(EventQueue.java:602)

at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:275)

at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:200)

at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:190)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:185)

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:177)

at java.awt.EventDispatchThread.run(EventDispatchThread.java:138)

desde já agradeço

abraço

Eduardo Rebouças

7 Respostas

J

Coloca o código da classe
ProjetoProfissionais.java
para a gente dar uma analisada

Eduardo_Rebou_s

é esse aqui:

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

/*
 * ProjetoProfissionais.java
 *
 * Created on 03/02/2010, 10:24:33
 */

package projetos1.forms;

import javax.swing.DefaultComboBoxModel;
import projetos1.logica.Monetario;

/**
 *
 * @author Eduardo
 */
public class ProjetoProfissionais extends javax.swing.JFrame {

    /** Creates new form ProjetoProfissionais */
    public ProjetoProfissionais() {
        
        //É aqui que trava
        jFTextValorHora.setDocument(new Monetario());
        

        initComponents();
        jComboProfissional.setModel(new DefaultComboBoxModel());
        jComboFuncao.setModel(new DefaultComboBoxModel());
        jComboProfissional.setEditable(true);
        jComboFuncao.setEditable(true);
        dadosSettDisable();
        
    }

    /** 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() {

        jPanel1 = new javax.swing.JPanel();
        jComboProfissional = new javax.swing.JComboBox();
        jLabel1 = new javax.swing.JLabel();
        jLabel2 = new javax.swing.JLabel();
        jLabel3 = new javax.swing.JLabel();
        jLabel4 = new javax.swing.JLabel();
        jLabel5 = new javax.swing.JLabel();
        jLabel6 = new javax.swing.JLabel();
        jLabel7 = new javax.swing.JLabel();
        jLabel8 = new javax.swing.JLabel();
        jTextCodigo = new javax.swing.JTextField();
        jComboFuncao = new javax.swing.JComboBox();
        jFTextDataContratacao = new javax.swing.JFormattedTextField();
        jFTextDataDesligamento = new javax.swing.JFormattedTextField();
        jScrollPane1 = new javax.swing.JScrollPane();
        jTextAreaObservacao = new javax.swing.JTextArea();
        jPanel2 = new javax.swing.JPanel();
        jBtnNovo = new javax.swing.JButton();
        jBtnAlterar = new javax.swing.JButton();
        jBtnSalvar = new javax.swing.JButton();
        jBtnExcluir = new javax.swing.JButton();
        jBtnCancelar = new javax.swing.JButton();
        jBtnSair = new javax.swing.JButton();
        jCheckBoxCoordenador = new javax.swing.JCheckBox();
        jScrollPane2 = new javax.swing.JScrollPane();
        jList1 = new javax.swing.JList();
        jLabel9 = new javax.swing.JLabel();
        jFTextValorHora = new javax.swing.JTextField();

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        jPanel1.setBorder(javax.swing.BorderFactory.createTitledBorder(" Profissionais "));

        jComboProfissional.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        jLabel1.setText("Código Projeto:");

        jLabel2.setText("Profissional:");

        jLabel3.setText("Função:");

        jLabel4.setText("Coord:");

        jLabel5.setText("Valor Hora:");

        jLabel6.setText("Data Contratação:");

        jLabel7.setText("Data Desligamento:");

        jLabel8.setText("Observação:");

        jComboFuncao.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" }));

        try {
            jFTextDataContratacao.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##/##/####")));
        } catch (java.text.ParseException ex) {
            ex.printStackTrace();
        }

        try {
            jFTextDataDesligamento.setFormatterFactory(new javax.swing.text.DefaultFormatterFactory(new javax.swing.text.MaskFormatter("##/##/####")));
        } catch (java.text.ParseException ex) {
            ex.printStackTrace();
        }

        jTextAreaObservacao.setColumns(20);
        jTextAreaObservacao.setRows(5);
        jScrollPane1.setViewportView(jTextAreaObservacao);

        jPanel2.setBorder(javax.swing.BorderFactory.createTitledBorder(" Navegação "));

        jBtnNovo.setText("Novo");
        jBtnNovo.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBtnNovoActionPerformed(evt);
            }
        });

        jBtnAlterar.setText("Alterar");

        jBtnSalvar.setText("Salvar");

        jBtnExcluir.setText("Excluir");
        jBtnExcluir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBtnExcluirActionPerformed(evt);
            }
        });

        jBtnCancelar.setText("Cancelar");

        jBtnSair.setText("Sair");
        jBtnSair.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBtnSairActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPanel2Layout = new javax.swing.GroupLayout(jPanel2);
        jPanel2.setLayout(jPanel2Layout);
        jPanel2Layout.setHorizontalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel2Layout.createSequentialGroup()
                .addContainerGap(58, Short.MAX_VALUE)
                .addComponent(jBtnNovo)
                .addGap(18, 18, 18)
                .addComponent(jBtnAlterar)
                .addGap(18, 18, 18)
                .addComponent(jBtnSalvar)
                .addGap(18, 18, 18)
                .addComponent(jBtnExcluir)
                .addGap(18, 18, 18)
                .addComponent(jBtnCancelar)
                .addGap(18, 18, 18)
                .addComponent(jBtnSair)
                .addGap(45, 45, 45))
        );

        jPanel2Layout.linkSize(javax.swing.SwingConstants.HORIZONTAL, new java.awt.Component[] {jBtnAlterar, jBtnCancelar, jBtnExcluir, jBtnNovo, jBtnSair, jBtnSalvar});

        jPanel2Layout.setVerticalGroup(
            jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel2Layout.createSequentialGroup()
                .addGroup(jPanel2Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBtnNovo)
                    .addComponent(jBtnAlterar)
                    .addComponent(jBtnSalvar)
                    .addComponent(jBtnExcluir)
                    .addComponent(jBtnCancelar)
                    .addComponent(jBtnSair))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        jList1.setModel(new javax.swing.AbstractListModel() {
            String[] strings = { "Item 1", "Item 2", "Item 3", "Item 4", "Item 5" };
            public int getSize() { return strings.length; }
            public Object getElementAt(int i) { return strings[i]; }
        });
        jScrollPane2.setViewportView(jList1);

        jLabel9.setText("Lista de Profissionais no Projeto:");

        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.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                        .addComponent(jLabel3)
                        .addComponent(jLabel5)
                        .addComponent(jLabel2)
                        .addComponent(jLabel1)
                        .addComponent(jLabel8)
                        .addComponent(jLabel7))
                    .addComponent(jLabel6))
                .addGap(4, 4, 4)
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jFTextDataDesligamento, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jComboProfissional, javax.swing.GroupLayout.PREFERRED_SIZE, 144, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGroup(jPanel1Layout.createSequentialGroup()
                                .addComponent(jComboFuncao, javax.swing.GroupLayout.PREFERRED_SIZE, 100, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jLabel4)
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addComponent(jCheckBoxCoordenador))
                            .addComponent(jFTextDataContratacao, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jTextCodigo, javax.swing.GroupLayout.PREFERRED_SIZE, 24, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 31, Short.MAX_VALUE)
                        .addComponent(jLabel9))
                    .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jFTextValorHora, javax.swing.GroupLayout.PREFERRED_SIZE, 67, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 175, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(37, 37, 37))
            .addComponent(jPanel2, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
        );
        jPanel1Layout.setVerticalGroup(
            jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPanel1Layout.createSequentialGroup()
                .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGap(13, 13, 13)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jTextCodigo, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel1))
                        .addGap(3, 3, 3)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jComboProfissional, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel2))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                .addComponent(jComboFuncao, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jLabel4, javax.swing.GroupLayout.DEFAULT_SIZE, 20, Short.MAX_VALUE)
                                .addComponent(jLabel3))
                            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jPanel1Layout.createSequentialGroup()
                                .addComponent(jCheckBoxCoordenador, javax.swing.GroupLayout.PREFERRED_SIZE, 13, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGap(3, 3, 3)))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel5)
                            .addComponent(jFTextValorHora, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jFTextDataContratacao, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jLabel6))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jLabel7)
                            .addComponent(jFTextDataDesligamento, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel8)
                            .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(40, 40, 40))
                    .addGroup(jPanel1Layout.createSequentialGroup()
                        .addGap(28, 28, 28)
                        .addGroup(jPanel1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jLabel9)
                            .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 205, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(74, 74, 74)))
                .addComponent(jPanel2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(59, 59, 59))
        );

        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.PREFERRED_SIZE, 395, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

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

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

    private void jBtnNovoActionPerformed(java.awt.event.ActionEvent evt) {                                         
        dadosSettAble();
        limpaDados();
    }                                        

    private void jBtnSairActionPerformed(java.awt.event.ActionEvent evt) {                                         
        this.dispose();
    }                                        

    /**
    * @param args the command line arguments
    */
    public static void main(String args[]) {
        java.awt.EventQueue.invokeLater(new Runnable() {
            public void run() {
                new ProjetoProfissionais().setVisible(true);
            }
        });
    }

    public void limpaDados()
    {
        jTextCodigo.setText("");
//      jComboProfissional.setSelectedIndex(0);
//      jComboFuncao.setSelectedIndex(0);
        jCheckBoxCoordenador.setSelected(false);
        jFTextValorHora.setText("0,00");
        jCheckBoxCoordenador.setText("");
        jFTextDataContratacao.setText("");
        jFTextDataDesligamento.setText("");
        jTextAreaObservacao.setText("");
    }
    public void dadosSettAble()
    {
        jComboProfissional.setEnabled(true);
        jComboProfissional.setEditable(true);
        jComboFuncao.setEnabled(true);
        jComboFuncao.setEditable(true);
        jFTextValorHora.setEditable(true);
        jCheckBoxCoordenador.setEnabled(true);
        jFTextDataContratacao.setEditable(true);
        jFTextDataDesligamento.setEditable(true);
        jTextAreaObservacao.setEditable(true);
    }
    public void dadosSettDisable()
    {
        jTextCodigo.setEditable(false);
        jComboProfissional.setEnabled(false);
        jComboProfissional.setEditable(false);
        jComboFuncao.setEnabled(false);
        jComboFuncao.setEditable(false);
        jFTextValorHora.setEditable(false);
        jCheckBoxCoordenador.setEnabled(false);
        jFTextDataContratacao.setEditable(false);
        jFTextDataDesligamento.setEditable(false);
        jTextAreaObservacao.setEditable(false);
    }

    // Variables declaration - do not modify
    private javax.swing.JButton jBtnAlterar;
    private javax.swing.JButton jBtnCancelar;
    private javax.swing.JButton jBtnExcluir;
    private javax.swing.JButton jBtnNovo;
    private javax.swing.JButton jBtnSair;
    private javax.swing.JButton jBtnSalvar;
    private javax.swing.JCheckBox jCheckBoxCoordenador;
    private javax.swing.JComboBox jComboFuncao;
    private javax.swing.JComboBox jComboProfissional;
    private javax.swing.JFormattedTextField jFTextDataContratacao;
    private javax.swing.JFormattedTextField jFTextDataDesligamento;
    private javax.swing.JTextField jFTextValorHora;
    private javax.swing.JLabel jLabel1;
    private javax.swing.JLabel jLabel2;
    private javax.swing.JLabel jLabel3;
    private javax.swing.JLabel jLabel4;
    private javax.swing.JLabel jLabel5;
    private javax.swing.JLabel jLabel6;
    private javax.swing.JLabel jLabel7;
    private javax.swing.JLabel jLabel8;
    private javax.swing.JLabel jLabel9;
    private javax.swing.JList jList1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JPanel jPanel2;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JTextArea jTextAreaObservacao;
    private javax.swing.JTextField jTextCodigo;
    // End of variables declaration

}

vlw pela ajuda

A

Cara, é melhor tu aplicar uma máscara ao invés de ter esse trabalhão todo aí. Dê uma olhada aqui nesse post:
http://www.guj.com.br/posts/list/26103.java

correainfo

No seu codigo vc esta setando o document antes de criar o jFTextValorHora.

public ProjetoProfissionais() {  
          
        //É aqui que trava  
        jFTextValorHora.setDocument(new Monetario());  
          
  
        initComponents();  
        jComboProfissional.setModel(new DefaultComboBoxModel());  
        jComboFuncao.setModel(new DefaultComboBoxModel());  
        jComboProfissional.setEditable(true);  
        jComboFuncao.setEditable(true);  
        dadosSettDisable();  
          
    }

Coloca asssim

public ProjetoProfissionais() {  
            
        initComponents();  

//É aqui que trava  
        jFTextValorHora.setDocument(new Monetario());  
        

        jComboProfissional.setModel(new DefaultComboBoxModel());  
        jComboFuncao.setModel(new DefaultComboBoxModel());  
        jComboProfissional.setEditable(true);  
        jComboFuncao.setEditable(true);  
        dadosSettDisable();  
          
    }
Eduardo_Rebou_s

Opa vle correainfo

era isso mesmo, vlw mesmo abraço

vitor_lima

Eodeio esse código que o NEtBeans cria …

Já ouvi dizer que há um plugin para o Eclipse que nos permite criar janelas no estilo VB (clica e arrasta).
Alguém ai conhece?
O código fica como o criado pelo NetBeans?

Abrçs.

renzonuccitelli

Uma vez estava procurando isso, mas pra funcionar igual um caixa eletrônico. Então chutei o balde e fiz o meu componente. Dá uma olhada nesse tópico.
Para Swing, na parte de formulários, eu usava o SwingBean, excelente framework e eu recomento. Antes era um sofrimento trabalhar com Swing.

Criado 11 de fevereiro de 2010
Ultima resposta 18 de fev. de 2010
Respostas 7
Participantes 6