Problem to link Jframe to main

Asked

Viewed 41 times

1

I want to start using Jframe, I have a petshop program (very simple) that I can, including client, include animal, do service, consult client and exclude client. wanted to make a menu for it using Jframe, but I have no idea how to link the two classes, follows below the main class and Jframe.

package br.com.petshop.dados;

import java.sql.SQLException;
import java.util.Random;
import java.util.Scanner;

import br.com.petshop.modelo.Animal;
import br.com.petshop.modelo.Cliente;
import br.com.petshop.modelo.Os;

public class CadastroCliente {

    public static void main(String[] args) throws SQLException {
        // JdbcDAOFactory jdbc = new JdbcDAOFactory();

        Random r = new Random();
        Scanner s = new Scanner(System.in);
        boolean menuPrincipal = true;
        Animal a = new Animal();
        Cliente c = new Cliente();
        while (menuPrincipal) {
            System.out.println("BEM VINDO AO PET SHOP ITSTEP");
            System.out.println("| Escolha a opção desejada |");
            System.out.println("|                          |");
            System.out.println("| 1 - Incluir Cliente      |");
            System.out.println("| 2 - Incluir Animal       |");
            System.out.println("| 3 - Fazer Serviço        |");
            System.out.println("| 4 - Consultar cliente    |");
            System.out.println("| 5 - Excluir Cliente      |");
            System.out.println("|**************************|");



            switch (s.nextInt()) {
            case 1:
                // Incluir cliente
                System.out.println("Entre com o nome do Cliente:");
                c.setNome(s.next());
                c.setMatricula(r.nextInt(9999));
                System.out.println("Entre com o e-mail do Cliente:");
                c.setEmail(s.next());
                System.out.println("Entre com o telefone fixo do Cliente:");
                c.setFixo(s.next());
                System.out.println("Entre com o telefone celular do Cliente:");
                c.setCelular(s.next());
                System.out.println("**** Endereço ****");
                System.out.println("Entre com o nome da rua:");
                c.setLogradouro(s.next());
                System.out.println("Entre com o complemento:");
                c.setComplemento(s.next());
                System.out.println("Entre com o bairro:");
                c.setBairro(s.next());
                System.out.println("Entre com a cidade:");
                c.setCidade(s.next());
                System.out.println("Matricula do cliente: " + c.getMatricula());
                try {
                    CrudCliente ic = new CrudCliente();

                    if (ic.incluir(c.getNome(), c.getEmail(), c.getFixo(), c.getCelular(), c.getLogradouro(),
                            c.getComplemento(), c.getBairro(), c.getCidade(), c.getMatricula())) {
                        System.out.println("incluido com sucesso");

                    } else {
                        System.out.println("Erro na inclusão");
                    }

                } catch (Exception e) {
                    System.out.println(e.getMessage());
                }
                menuPrincipal = true;
                c = null;
                break;

            case 2:
                // Incluir Animal

                System.out.println("Entre com o nome do animal:");
                a.setNome(s.next());
                System.out.println("Digite a Matricula do Dono:");
                a.setMatricula(s.nextInt());
                System.out.println("Digite o sexo do animal:");
                a.setSexo("Macho");
                System.out.println("Digite 1 para Cachorro e 2 para Gato:");
                String especie = "";
                boolean escolha = true;
                while (escolha) {
                if (s.next().equals("1")) {
                    especie = "Cão";
                    escolha = false;
                } if (s.next().equals("2")) {
                    especie = "Gato";
                    escolha = false;
                } else {
                    System.out.println("digite uma opção válida");
                    escolha = true;
                }
                }
                a.setEspecie(especie);
                System.out.println("Digite a raça:");
                a.setRaca(s.next());
                System.out.println("Digite o ano de nascimento com 4 digitos:");
                a.setAnoNascimento(s.nextInt());
                a.setClienteId(a.getMatricula());
                System.out.println("Digite o porte do animal:");
                a.setPorte(s.next());

                try {
                    CrudAnimal ia = new CrudAnimal();

                    if (ia.incluir(a.getNome(), a.getRaca(), a.getEspecie(), a.getMatricula(), a.getClienteId(),
                            a.getAnoNascimento(), a.getSexo(), a.getPorte())) {
                        System.out.println("incluido com sucesso");
                    } else {
                        System.out.println("Erro na inclusão");
                    }

                } catch (Exception e) {
                    System.out.println(e.getMessage());
                }
                menuPrincipal = true;
                a = null;
                break;

            case 3:
                // Serviço
                Animal animal = new Animal();
                System.out.println("Entre com a matricula:");
                animal.setMatricula(s.nextInt());

                try {
                    CrudAnimal ca = new CrudAnimal();

                    if (ca.consultar(animal.getId(), animal.getNome(), animal.getRaca(), animal.getEspecie(), animal.getMatricula(), animal.getClienteId(), animal.getAnoNascimento(), animal.getSexo(), animal.getPorte())) {
                        System.out.println("Consulta realizada com sucesso");
                    } else {
                        System.out.println("Erro na consulta");
                    }

                } catch (Exception e) {
                    // TODO: handle exception

                }
                boolean teste = true;
                Os os = new Os();
                CrudOs io = new CrudOs();
                os.setPrecoTotal(0.00);

                System.out.println("Animal correto? S/N");

                if (s.next().toUpperCase().equals("S")) {
                    while (teste) {
                        System.out.println("Escolha o serviço a ser feito:");
                        System.out.println("1 - Banho");
                        System.out.println("2 - Tosa Higiênica");
                        System.out.println("3 - Tosa");

                        switch (s.nextInt()) {
                        case 1:

                            os.setMatricula(animal.getMatricula());
                            os.setPrecoTotal(os.getPrecoTotal() + 30.00);
                            os.setServico("Banho");
                            try {

                                if (io.incluir(os.getMatricula(), os.getPrecoTotal(), os.getServico())) {
                                    System.out.println("incluido com sucesso");

                                } else {
                                    System.out.println("Erro na inclusão");
                                }

                            } catch (Exception e) {
                                System.out.println(e.getMessage());
                            }
                            System.out.println("Deseja mais algum serviço? S/N");
                            if (s.next().toUpperCase().equals("S")) {
                                teste = true;
                            } else {
                                teste = false;
                                menuPrincipal = true;
                            }
                            break;

                        case 2:

                            os.setMatricula(animal.getMatricula());
                            os.setPrecoTotal(os.getPrecoTotal() + 15.00);
                            os.setServico("Tosa Higiênica");
                            try {

                                if (io.incluir(os.getMatricula(), os.getPrecoTotal(), os.getServico())) {
                                    System.out.println("incluido com sucesso");

                                } else {
                                    System.out.println("Erro na inclusão");
                                }

                            } catch (Exception e) {
                                System.out.println(e.getMessage());
                            }
                            System.out.println("Deseja mais algum serviço?");
                            if (s.next().toUpperCase().equals("S")) {
                                teste = true;
                            } else {
                                teste = false;
                                menuPrincipal = true;
                            }
                            break;

                        case 3:

                            os.setMatricula(animal.getMatricula());
                            os.setPrecoTotal(os.getPrecoTotal() + 20.00);
                            os.setServico("Tosa");
                            try {

                                if (io.incluir(os.getMatricula(), os.getPrecoTotal(), os.getServico())) {
                                    System.out.println("incluido com sucesso");

                                } else {
                                    System.out.println("Erro na inclusão");
                                }

                            } catch (Exception e) {
                                System.out.println(e.getMessage());
                            }
                            System.out.println("Deseja mais algum serviço? S/N");
                            if (s.next().toUpperCase().equals("S")) {
                                teste = true;
                            } else {
                                teste = false;
                                menuPrincipal = true;
                            }
                            break;
                        default:
                            break;
                        }
                    }
                }
                menuPrincipal = true;
                break;

            case 4:
                // consultar cliente
                System.out.println("Digite o Nome do Cliente ou Matricula:");
                String nome = s.next();
                Cliente cl = new Cliente();
                cl.setNome(nome);
                CrudCliente cc = new CrudCliente();
                CrudAnimal ca = new CrudAnimal();

                try {

                    if (cc.consultar(cl.getId(), cl.getNome(), cl.getEmail(), cl.getFixo(), cl.getCelular(),
                            cl.getLogradouro(), cl.getComplemento(), cl.getBairro(), cl.getCidade(),
                            cl.getMatricula())) {
                        System.out.println("Consulta efetuada com sucesso");
                    } else {
                        System.out.println("Erro na consulta");
                    }

                } catch (Exception e) {
                    // TODO: handle exception
                }
                //consulta animal seguida do cliente
                try {

                    if (ca.consultar(a.getId(), a.getNome(), a.getRaca(), a.getEspecie(), a.getMatricula(), a.getClienteId(), a.getAnoNascimento(), a.getSexo(), a.getPorte())) {

                        System.out.println("Consulta efetuada com sucesso");
                    } else {
                        System.out.println("Erro na consulta");
                    }

                } catch (Exception e) {
                    // TODO: handle exception
                }
                break;

            case 5:
                //exclusao


                System.out.println("Digite a matricula do cliente");
                c.setMatricula(s.nextInt());

                try {
                    CrudCliente ec = new CrudCliente();

                    if (ec.excluir(c.getMatricula())) {         
                        System.out.println("Excluído com sucesso");
                    } else {
                        System.out.println("Erro na exclusão");
                    }

                } catch (Exception e) {
                    // TODO: handle exception
                }


                menuPrincipal = true;
                break;
            default:
                break;
            }
        }

    }

}

Jframe

package br.com.petshop.modelo;

import java.awt.EventQueue;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;

import br.com.petshop.dados.CadastroCliente;

public class MenuPricipal extends JFrame {

    private JPanel contentPane;

    /**
     * Launch the application.
     */
    public static void main(String[] args) {
        EventQueue.invokeLater(new Runnable() {
            public void run() {
                try {
                    MenuPricipal frame = new MenuPricipal();
                    frame.setVisible(true);
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        });
    }

    /**
     * Create the frame.
     */
    public MenuPricipal() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setBounds(100, 100, 450, 300);
        contentPane = new JPanel();
        contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
        setContentPane(contentPane);
        contentPane.setLayout(null);

        JButton btnIncCliente = new JButton("New button");
        btnIncCliente.addActionListener(new ActionListener() {
            public void actionPerformed(ActionEvent arg0) {
                CadastroCliente cc = new CadastroCliente();

            }
        });
        btnIncCliente.setBounds(162, 90, 85, 21);
        contentPane.add(btnIncCliente);

        JButton btnNewButton_1 = new JButton("New button");
        btnNewButton_1.setBounds(162, 121, 85, 21);
        contentPane.add(btnNewButton_1);

        JButton btnNewButton_2 = new JButton("New button");
        btnNewButton_2.setBounds(162, 152, 85, 21);
        contentPane.add(btnNewButton_2);

        JButton btnNewButton_3 = new JButton("New button");
        btnNewButton_3.setBounds(162, 183, 85, 21);
        contentPane.add(btnNewButton_3);

        JButton btnNewButton_4 = new JButton("New button");
        btnNewButton_4.setBounds(162, 214, 85, 21);
        contentPane.add(btnNewButton_4);
    }
}

1 answer

0


You do not "link" text mode with graphic mode. Any text interface you have made, you will need to elaborate one in graphic mode, from scratch. Each different menu in this text mode will probably turn into a screen or a panel and many functions will be called in listeners of buttons or actions of other components, this will depend a lot on how you intend to build the application.

Forget about mixing these two modes, because the jar will not show anything on console when you generate one, running through 2 clicks.

If you do not know or do not have as much notion as to create interfaces and use listeners of the swing API, I recommend that, first of all, learn the basics about the components, layouts and listeners, in the links below, are a little old, but java-swing itself is something old and old-fashioned.

And of course, on the tag there are numerous questions on the subject.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.