Gente não sei se vou saber explicar minha duvida, porém irei tentar, estou estudando interface gráfica e to inventando uns projetos meios loucos apenas para treinar, to criando o seguinte projeto, Jate nho uma calculadora feita que fiz essa semana, então criei mais 2 frames … um para cadastro de login e outro para autenticação do login e senha, após a autenticação se passar, abre a calculadora, essa é minha intenção, porém estou com alguns problemas de organização e tambem de código, criei os 3 frames no mesmo projeto, um em cada package, meu professor semana passada disse um termo ao qual não me recordo que define a programação da seguinte forma, código separado de interface, porém ainda não estou usando essa aplicação, pois não consegui fazer isso ainda =D, então gente, quando executo um dos frames, sempre ele executa o de Autenticação, coloco para executar o de cadastro ele executa o de Autenticação, como faço para ele executar o que estou pedindo, vou mostrar meus código e gostaria que vocÊs podessem avaliar e me mostrar os erros e pontos a serem melhorados, obs: não sou expert em java então gostaria que tivessem cuidado com os termos usados =D
Cadastro Login e Senha
package CadastroLogin;
import javax.swing.JOptionPane;
public class Cadastro_Login_Senha extends javax.swing.JPanel {
String login = "";
String senha = "";
public Cadastro_Login_Senha() {
initComponents();
}
+ Generated Code
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
login = texto1.getText();
senha = new String (texto2.getPassword());
JOptionPane.showMessageDialog(null, "Cadastro efetuado com sucesso!");
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JPanel jPanel1;
private javax.swing.JTextField texto1;
private javax.swing.JPasswordField texto2;
// End of variables declaration
}
Frame Cadastro
package CadastroLogin;
import javax.swing.JFrame;
public class CadastroFrame extends JFrame {
CadastroFrame(){
super ("Cadastro Login");
Cadastro_Login_Senha c = new Cadastro_Login_Senha();
this.add(c);
this.setVisible(true);
this.setDefaultCloseOperation(EXIT_ON_CLOSE);
this.setLocationRelativeTo(null);
}
}
CadastroMain
package CadastroLogin;
public class CadastroMain {
public static void main (String args[]){
CadastroFrame f = new CadastroFrame();
}
}
Autenticação Login e Senha
package login_e_senha;
import calculadorainterfacemelhorada.MainCalc;
import javax.swing.JOptionPane;
public class Janela extends javax.swing.JPanel {
String login = "8577607", senha = "yuri060392";
public Janela() {
initComponents();
}
+ Generated Code
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
if (texto1.getText() == login && new String (pass1.getPassword()) == senha){
new MainCalc();
}
// String login = texto1.getText();
// String senha = new String (pass1.getPassword());
}
private void jButton2ActionPerformed(java.awt.event.ActionEvent evt) {
// System.exit(0);
texto1.setText("");
pass1.setText("");
}
// Variables declaration - do not modify
private javax.swing.JButton jButton1;
private javax.swing.JButton jButton2;
private javax.swing.JLabel jLabel1;
private javax.swing.JLabel jLabel2;
private javax.swing.JPanel jPanel1;
private javax.swing.JPasswordField pass1;
private javax.swing.JTextField texto1;
// End of variables declaration
}
Não estou conseguindo fazer com que ao apertar o botão OK que no caso é o JButton1 ele verifique a senha e chame o outro frame
Calculadora
package calculadorainterfacemelhorada;
import javax.swing.JOptionPane;
public class JanelaCalc extends javax.swing.JPanel {
double /*numero1,*/ numDouble;
int operacao;
public JanelaCalc() {
initComponents();
}
+ Generated Code
private void botao6ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "6");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaopontoActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + ".");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao1ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "1");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao2ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "2");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao3ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "3");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao4ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "4");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao5ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "5");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao7ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "7");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao8ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "8");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botao9ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "9");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaodivActionPerformed(java.awt.event.ActionEvent evt) {
try {
String numero = texto.getText();
numDouble = Double.parseDouble(numero);
// soma = 1
operacao = 4;
texto.setText("");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaomultActionPerformed(java.awt.event.ActionEvent evt) {
try {
String numero = texto.getText();
numDouble = Double.parseDouble(numero);
// soma = 1
operacao = 3;
texto.setText("");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaosubActionPerformed(java.awt.event.ActionEvent evt) {
try {
String numero = texto.getText();
numDouble = Double.parseDouble(numero);
// soma = 1
operacao = 2;
texto.setText("");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaosomaActionPerformed(java.awt.event.ActionEvent evt) {
try {
String numero = texto.getText();
numDouble = Double.parseDouble(numero);
// soma = 1
operacao = 1;
texto.setText("");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void botaoigualActionPerformed(java.awt.event.ActionEvent evt) {
String numString = texto.getText();
double numD = Double.parseDouble(numString);
if (operacao == 1){
double resultado = numDouble + numD;
String resultadoString = String.valueOf(resultado);
texto.setText(resultadoString);
}
else if (operacao == 2){
double resultado = numDouble - numD;
String resultadoString = String.valueOf(resultado);
texto.setText(resultadoString);
} else if (operacao == 3){
double resultado = numDouble * numD;
String resultadoString = String.valueOf(resultado);
texto.setText(resultadoString);
} else if (operacao == 4){
double resultado = numDouble / numD;
String resultadoString = String.valueOf(resultado);
texto.setText(resultadoString);
}
}
private void botao0ActionPerformed(java.awt.event.ActionEvent evt) {
try {
String num = texto.getText();
texto.setText(num + "8");
}
catch (Exception e) {
JOptionPane.showMessageDialog(null, "Digite Apenas Números", "ERRO", JOptionPane.ERROR_MESSAGE);
}
}
private void limparActionPerformed(java.awt.event.ActionEvent evt) {
texto.setText("");
// numero1 = 0;
numDouble = 0;
}
// Variables declaration - do not modify
private javax.swing.JButton botao0;
private javax.swing.JButton botao1;
private javax.swing.JButton botao2;
private javax.swing.JButton botao3;
private javax.swing.JButton botao4;
private javax.swing.JButton botao5;
private javax.swing.JButton botao6;
private javax.swing.JButton botao7;
private javax.swing.JButton botao8;
private javax.swing.JButton botao9;
private javax.swing.JButton botaodiv;
private javax.swing.JButton botaoigual;
private javax.swing.JButton botaomult;
private javax.swing.JButton botaoponto;
private javax.swing.JButton botaosoma;
private javax.swing.JButton botaosub;
private javax.swing.JPanel jPanel1;
private javax.swing.JButton limpar;
private javax.swing.JTextField texto;
// End of variables declaration
}
Main Calculadora
package calculadorainterfacemelhorada;
public class MainCalc {
public static void main (String args[]){
FrameCalc f = new FrameCalc();
}
}
Gente é uma confusão grande, mas espero que alguem consiga me ajudar, agradeço desde já