Chamar outra classe

estou chamando uma outra classe que é ControlPortal
so que kero pegar um valor do JtextField tplaca
ai fasso assim
ControlPortal cp = new ControlPortal
String dados = cp.tplaca.getText();
so que ocorre o seguinte chamando assim ele executa o programa
ControlPortal que é um aplicativo JDesktop, com JInternalFrame’s;

como fasso para chamar so o tplaca;

“Como eu faço” ou “Como eu fasso”???

Bom, creio que já exista uma instância de ControlPortal. Então vc não deve criar ela de novo para pegar o valor.
Pega da instância que já existe (se houver).

O que ocorre é o seguinte
tenho essa classa GeraVeiculo
que gera um relatorio em jasperviewer
para eu fazer a consulta sql
vou fazer atraves de dados digitados pelo usuario
que está nessa outra classe Chamada ControlPortal
que é um aplicativo desktop
pois se eu fazer assim no GeraVeiculo
ControlPortal cp = new ControlPortal();
String pega dados = cp.labelsql.getText();
se eu fazer isso ele vai rodar o ControlPane : vai abrir um JDesktopPanel
e isso eu não kero


E tem tb o seguinte dentro do ControlPortal criei uma classe
chamada FrameVeiculo e dentro dela tem um JTextField chamado
tplaca

em um outro aplicativo vou pegar o valor dela
como fasso?

Se vc já vai pegar os dados dessa tela, quer dizer que ela JÁ está aparecendo, certo?

Então, pega os dados do objeto que controla esta tela. Simples!

Me da um
exemplo
pois não consegui intender sua teoria

Está faltando conceito de Orientação a Objetos, amigo.

Imagine que a variável cp seja uma referência para um objeto do tipo ControlPortal.

Para pegar os dados você apenas faria: cp.labelsql.getText();, correto?

Mas se você fizer: ControlPortal cp = new ControlPortal();, antes de tentar pegar o dado, o programa criará uma nova janela.

Entendeu?

cara fiz isso que voce falow

so que da o seguinte erro

C:Controle_Salome>c:jdkinjava RelatVeiculo
Exception in thread "main" java.lang.NullPointerException
        at RelatVeiculo.geraRelatorio(RelatVeiculo.java:23)
        at RelatVeiculo.main(RelatVeiculo.java:36)

a classe é a seguinte

import dori.jasper.engine.*; import dori.jasper.view.*; import dori.jasper.view.JasperViewer; import java.sql.*; import java.util.*; import java.awt.*; import java.awt.event.*; public class RelatVeiculo { ControlPortal cp; private static Connection getConnection() throws ClassNotFoundException, SQLException { String url = "jdbc:odbc:dbPortal"; Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection MinhaConexao = DriverManager.getConnection(url); Statement MeuState = MinhaConexao.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY); return MinhaConexao; } /* Gera Relatorio e visualiza-o */ public void geraRelatorio( ) throws JRException, Exception { String sql = "SELECT * FROM TBVeiculo"; // aqui suo a variavel cp String dados = cp.tplaca.getText(); if(!cp.tplaca.getText().equals("")) { sql = sql + " WHERE dbplaca LIKE " + "'" dados +"'" ; } else { sql = sql ; } Connection MinhaConexao = getConnection(); Statement smt = MinhaConexao.createStatement(); ResultSet rs= smt.executeQuery(sql); /* implementação da interface JRDataSource para DataSource ResultSet */ JRResultSetDataSource jrRS = new JRResultSetDataSource( rs ); JasperPrint print = JasperFillManager.fillReport("RelatVeiculos.jasper",null,jrRS); JasperViewer.viewReport(print); } public static void main(String[] args) throws JRException, Exception { new RelatVeiculo().geraRelatorio(); } } [size=“18”][/size][size=“12”][/size]

Amigao, qd vc cria uma variavel de algum tipo nao significa q ela eh um Objeto:

ControlPortal cp

Vc deve criar uma instancia do mesmo para poder chamar algum metodo. Ao q me parece tplaca eh uma variavel publica… Nao faca isso! Crie a mesma privada e faca seus respectivos getXXX e setXXX

Voltando ao assunto do cp, para instancia-lo de um new no mesmo:

ControlPortal cp = new ControlPortal()

Eh isso aih :wink:

aborges

so que se eu fazer isso ControlPortal cp = new ControlPortal();

ele vai executar esse programa que é grande que contem
JDesktopPane e JInternalFrame’ s

esse tplaca é um JTextField aonde o usuario vai digitar dados

Quem utiliza a RelatVeiculo eh a propria ControlPortal??

Caso positivo, crie um construtor:

public RelatVeiculo(ControlPortal cp)

Entao, na ControlPortal vc cria assim:

...... = new RelatVeiculo(this);

o
RelatVeiculo nele eu crio um relatorio
e quero chamar o ControlPortal somente para pegar os
valores dos JtextFields para montar a consulta sql

e no ControlPortal
eu chama o RelatVeiculo para visualizar o relatorio

[quote=“BomBer_Rp”]o
RelatVeiculo nele eu crio um relatorio
e quero chamar o ControlPortal somente para pegar os
valores dos JtextFields para montar a consulta sql

e no ControlPortal
eu chama o RelatVeiculo para visualizar o relatorio[/quote]

Nossa que nó heim !!! :shock: Isso nao eh OO

Entao ControlPortal eh sua telinha. Cara RelatVeiculo nao tem ter um objeto ControlPortal. O q ele sabe eh criar relatorios! Qd vc for construir o RelatVeiculo na ControlPortal vc pode passar os parametros de tela direto no construtor do RelatVeiculo!

Kra é mesmo
é que esse dias estou tendo
Auditoria da SSASMAQ
e ISO 9001:2000
por isso estou meio abalado , valew
até mais