Vetor

4 respostas
E

Olá;

Estou precisando acessar um Vetor de dentro de uma classe e não estou conseguindo. Onde pode está o erro ?

Classe Siscom: Contém o Vetor

package siscom.br.eti.excon.Forms;
import java.io.*;
import java.util.*;
import br.eti.excon.Forms.CadCli;
import br.eti.excon.Classes.Splash;

public class Siscom extends javax.swing.JFrame {
    public String[] iPath = new String[5];
    public Siscom() {
        initComponents();
}

Classe CadCli precisa acessar o Vetor de Siscom

package br.eti.excon.Forms;
public class CadCli extends javax.swing.JInternalFrame {
    public CadCli() {
        initComponents();
        btnNovo.setIcon(new javax.swing.ImageIcon(Siscom.iPath[0]));
    }

Também já coloquei no evento abaixo:

private void formInternalFrameOpened(javax.swing.event.InternalFrameEvent evt) {                                         
        // TODO add your handling code here:
     btnNovo.setIcon(new javax.swing.ImageIcon(Siscom.iPath[0]));
}

E nada - Erro:

D:\JavaProject\LPublic\src\br\eti\excon\Forms\CadCli.java:18: cannot find symbol
symbol : variable Siscom
location: class br.eti.excon.Forms.CadCli
btnNovo.setIcon(new javax.swing.ImageIcon(Siscom.iPath[0]));

NetBeans 4.01EA2
Java 5.0 r 02

Valeu.

4 Respostas

M

declare um getter pra ele… ou faça dele um atributo static…

E

Olá;

O que é um getter como faz ?

Uma dica: Tem como eu receber por email as duvidas da lista ?

Valeu.

F

Um “getter” é um metodo que vai te retornar o valor de um atributo, por exemplo, se vc tiver uma classe cliente com um atributi nome, vc faz um metodo getter(getNome) e um setNome para vc poder mexer no atributo NOME quando ele estiver encapsulado(protected).
se vc quiser imprimir o nome do clientye no console, vc chama o metodo getNome: System.out.println(cliente.getNome);

C

O erro que eu consegui perceber é que vc não instanciou o objeto. Como não seu vetor não é estático, é preciso existir uma classe já instanciada, tente isso:

private void formInternalFrameOpened(javax.swing.event.InternalFrameEvent evt) { // TODO add your handling code here: btnNovo.setIcon(new javax.swing.ImageIcon((new Siscom()).iPath[0])); } [/code]

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