Métodos de componentes swing no netBeans!

10 respostas
rocha

Olá Pessoal,

É o seguinte estou querendo usar o netbeans para fazer algumas interfaces, daí me deparei no seguinte problemas criei um jtextFild e um botão e quero q qdo o botão seja clicado o texto do jTextFild seja alterado, daí tentei fazer o seguinte:

jtext.setText("Texto ......"); a contece q qdo crio o jtext no editor de form ele cria o componente num método private initComponents() e não tenho acesso aos componentes… alguém sabe o q devo fazer? :roll:

Rocha

10 Respostas

danieldestro

Na edição da sua tela (construção), dê um duplo click no botão e ele deve criar um método que vai responder a uma ação feita no botão. Alí você programa a ação do botão, por exemplo, colocar um texto no textfield.

rocha

Olá Daniel isso não funciona pois o netbeans q gera o código de criação do botão e cria como private daí não tenho acesso ao mesmo. :cry:

D

O que o Daniel falou está correto. Outra maneira é Botão direito em cima do botão, Events -> action -> actionPerformed.
O NetBeans vai criar um método editável para você indicar a ação do botão. E qual o problema dos componentes serem private?

rocha
isso aqui q eu estou tentando e não ta rolando:
private void initComponents() {
        javax.swing.JButton jBpesquisar;
        javax.swing.JLabel jEndereco;
        javax.swing.JTextField jText;

        jBpesquisar = new javax.swing.JButton();
        jEndereco = new javax.swing.JLabel();
        jText = new javax.swing.JTextField();

        getContentPane().setLayout(null);

        addWindowListener(new java.awt.event.WindowAdapter() {
            public void windowClosing(java.awt.event.WindowEvent evt) {
                exitForm(evt);
            }
        });

        jBpesquisar.setText("Pesquisar");
        jBpesquisar.setName("JBpesquisar");
        jBpesquisar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBpesquisarActionPerformed(evt);
            }
        });

        getContentPane().add(jBpesquisar);
        jBpesquisar.setBounds(150, 130, 120, 25);

        jEndereco.setText("Endere\u00e7o");
        getContentPane().add(jEndereco);
        jEndereco.setBounds(94, 80, 120, 15);

        jText.setText("teste");
        jText.setName("");
        jText.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jTextActionPerformed(evt);
            }
        });

        getContentPane().add(jText);
        jText.setBounds(177, 50, 120, 21);

        pack();
    }
    
    private void jTextActionPerformed(java.awt.event.ActionEvent evt) {
        // TODO add your handling code here:
    }
    
    private void jBpesquisarActionPerformed(java.awt.event.ActionEvent evt) {
        jText.setText("TESTE2");// TODO add your handling code here:
    }
D
rocha:
isso aqui q eu estou tentando e não ta rolando:
private void initComponents() {
        javax.swing.JButton jBpesquisar;
        javax.swing.JLabel jEndereco;
        javax.swing.JTextField jText;

        jBpesquisar = new javax.swing.JButton();
        jEndereco = new javax.swing.JLabel();
        jText = new javax.swing.JTextField();

...
Isto é estranho. Adicionando componentes em um JFrame, o NetBeans declara eles como private e não internamente no initComponents(). Qual foi o procedimento usado para adicionar os componentes no JFrame? Qual versão do NetBeans você tá usando?
rocha

arrastei e soltei o componente no form, a versão é 3.6

D

Para resolver isso, peça a propriedades do JTextField, Guia Code, Use Local Variable deve estar marcado. Desmarque. Faça isso para outros componentes que desejar.
Em Variable Modifiers, você poderá escolher como o componente será declarado na classe do JFrame.
Seu netbeans deve tá configurado com esse comportamento como padrão, provavelmente.

D

Aqui está a configuração para isso:
Tools -> Options, Editing -> Form Editor Settings
No grupo de propriedades Expert, você encontra: Local Variables.

rocha

Valeu Dharis!!!

keller

Botão Direito no JButton -> Properties -> Aba Code -> Variable Modifiers -> […] -> Access: [ComboBox com os tipos de Acesso] {Public / Protected…}

valeu? até mais… :wink:

Criado 28 de março de 2005
Ultima resposta 28 de mar. de 2005
Respostas 10
Participantes 4