Boa tarde pessoALL,
Sou iniciante em Java (vcs devem estar cansados de ouvir isso, rs), na verdade eu sou programadora COBOL e preciso desenvolver um exemplo de Java acessando o COBOL e ai parte meu problema:
A minha pergunta é meio idiota, mas é pq eu não tenho conhcimento algum mesmo na linguagem…
Como eu faço para capturar um dado da tela pra uma variável? O programa funciona, acontece que eu já estou passando os valores (está fixo) que o COBOL precisa receber, e o que eu preciso é que estes dados sejam digitados na tela…
Vou colar um pedaço do programa:
import java.awt.;
import java.awt.event.;
public class DemoFrame extends Frame
{
BorderLayout borderLayout1 = new BorderLayout();
MenuBar ApplicationMenu = new MenuBar();
Menu menu1 = new Menu();
Menu menu2 = new Menu();
MenuItem menuItem2 = new MenuItem();
MenuItem menuItem1 = new MenuItem();
GridLayout gridLayout1 = new GridLayout();
Label nome_cliente_label = new Label();
TextField nome_cliente_field = new TextField();
Label email_cliente_label = new Label();
TextField email_cliente_field = new TextField();
Label codigo_cliente_label = new Label();
TextField codigo_cliente_field = new TextField();
Menu menu3 = new Menu();
MenuItem menuItem3 = new MenuItem();
MenuItem menuItem4 = new MenuItem();
Button okButton = new Button();
Label blank1 = new Label();
//RecordDemo rd;
//RecordData customerDetails;
Demo rd;
Dados dadosCliente;
public DemoFrame()
{
try
{
jbInit();
}
catch (Exception e)
{
e.printStackTrace();
}
}
private void jbInit() throws Exception
{
this.setLayout(borderLayout1);
this.setSize(new Dimension(400, 300));
this.setTitle(“Clientes”);
okButton.setLabel(“Gravar”);
okButton.setSize(50, 2);
blank1.setVisible(false);
blank1.setText(“blank1”);
menu1.setLabel(“Arquivo”);
menu2.setLabel(“Ajuda”);
menuItem2.setLabel(“About”);
menuItem2.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
{
menuItem2_actionPerformed(e);
}
});
menuItem1.setLabel("Sair");
nome_cliente_label.setText("Nome:");
nome_cliente_field.setColumns(30);
nome_cliente_field.setEditable(true);
email_cliente_label.setText("E-mail:");
email_cliente_field.setColumns(30);
email_cliente_field.setEditable(true);
codigo_cliente_label.setText("Código:");
codigo_cliente_field.setColumns(6);
codigo_cliente_field.setEditable(true);
menu3.setLabel("Executar");
menuItem4.setLabel("Consultar");
menuItem3.setLabel("Cadastro");
gridLayout1.setRows(5);
menuItem1.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
{
menuItem1_actionPerformed(e);
}
});
this.setLayout(gridLayout1);
ApplicationMenu.add(menu1);
ApplicationMenu.add(menu3);
ApplicationMenu.add(menu2);
menu2.add(menuItem2);
this.setMenuBar(ApplicationMenu);
menu1.add(menuItem1);
this.add(codigo_cliente_label, null);
this.add(codigo_cliente_field, null);
this.add(nome_cliente_label, null);
this.add(nome_cliente_field, null);
this.add(email_cliente_label, null);
this.add(email_cliente_field, null);
this.add(okButton, null);
this.add(blank1, null);
menu3.add(menuItem3);
menu3.add(menuItem4);
/* Create RecordDemo and CustomerDetails record */
this.rd = new Demo();
this.dadosCliente = new Dados("Nome", "E-mail ", 000000); (É NESTA LINHA QUE ESTOU COM DIFICULDADE)
okButton.addActionListener(new java.awt.event.ActionListener()
{
public void actionPerformed(ActionEvent e)
{
okButton_actionPerformed(e);
}
});
Aqui está o programa que passa os dados para o COBOL:
import com.microfocus.cobol.*;
public class Demo
{
public Demo()
{
}
public void setDetails(Dados dadosCliente) throws CobolException, Exception
{
int retcode;
// pass the details to the COBOL program
Object[] params = { dadosCliente};
try
{
retcode = RuntimeSystem.cobcall("RecordDemo", params);
}
catch (Exception e)
{
System.exit(0);
}
}
Qualquer ajuda será bem vinda… tks =)