Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Roma
    Messaggi
    81

    If then else dove e come metterlo?

    Salve, sto creando un Login in Java, ma non riesco, ad inserire l'IF , che se la username e la password sono esatti, mi restiuisce ciao giampiero, altrimenti chi sei?
    questo e il codice:
    codice:
    import javax.swing.JFrame;
    import javax.swing.JLabel;
    import javax.swing.JButton;
    import javax.swing.JPanel;
    import javax.swing.JTextField;
    import java.awt.*;
    import java.awt.event.*;
    
    
    public class login {
        public static void main (String[] args){
            JFrame frame = new JFrame("Login");
            frame.setSize(400,300);
            JPanel panel = new JPanel();
            panel.setSize(200,200);
            JLabel label = new JLabel("LOGIN");
            panel.setLayout(new GridLayout(6,2));
            JLabel label1 = new JLabel("Username");
            JTextField text = new JTextField("Username");
            JLabel label2 = new JLabel("Password");
            JTextField text1 = new JTextField("Password");
            JButton button = new JButton("Login");
            frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            frame.add(panel);
            panel.add(label);
            panel.add(label1);
            panel.add(text);
            panel.add(label2);
            panel.add(text1);
            panel.add(button);
            frame.setVisible(true);
            button.addActionListener(new Action());
            
        }
            }
            class Action implements ActionListener{
            public void actionPerformed (ActionEvent e){
                JFrame frame1 = new JFrame();
                frame1.setVisible(true);
                frame1.setSize(200,200);
            JLabel label = new JLabel("ciao Giampiero");
                JPanel panel = new JPanel();
                frame1.add(panel);
                panel.add(label);
                frame1.setVisible(true);
        
            }
        }
    Ultima modifica di LeleFT; 19-01-2016 a 13:43 Motivo: Sistemati i tag CODE

  2. #2
    Quote Originariamente inviata da php76 Visualizza il messaggio
    Salve, sto creando un Login in Java, ma non riesco, ad inserire l'IF , che se la username e la password sono esatti, mi restiuisce ciao giampiero
    Il controllo lo dovresti eseguire a fronte della azione sul pulsante, ovvero nel contesto del actionPerformed. Ma il problema è che il design della tua classe non è buono, perché tutti i riferimenti ai componenti sono in variabili locali al metodo main e quindi non puoi usarli all'interno del actionPerformed.

    Cambia il design, se hai bisogno di gestire un frame, abituati a definire una classe es.

    public class FramePrincipale extends JFrame

    al cui interno tieni i componenti come variabili di istanza. Nel costruttore crei i componenti e componi il layout. E gli eventi li gestisci possibilmente con inner class (preferibilmente private).
    AndreaSenior Java developerSCJP 5 (91%) – SCWCD 5 (94%)
    Il mio nuovo sito-blog italiano sulla programmazione: andbin.it

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Roma
    Messaggi
    81
    Quindi se ho ben capito devo creare una Classe che venga richiamata, dall ActionPerformed?

  4. #4
    Quote Originariamente inviata da php76 Visualizza il messaggio
    Quindi se ho ben capito devo creare una Classe che venga richiamata, dall ActionPerformed?
    Se devi creare ed aprire un altro frame a seguito del login (come deduco dal tuo codice), sì.
    Ma il punto è che devi strutturare ed incapsulare meglio le cose. Separa di più le funzionalità. Nella tua classe login ora stai implementando 2 frame distinti, non va bene.
    AndreaSenior Java developerSCJP 5 (91%) – SCWCD 5 (94%)
    Il mio nuovo sito-blog italiano sulla programmazione: andbin.it

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2009
    residenza
    Roma
    Messaggi
    81
    un chiarimento, allora il PUBLIC VOID MAIN (STRING [] ARGS), in SWING dove va messo?

  6. #6
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,179
    Dovunque tu voglia.

    Non c'entra Swing, AWT, SWT o quel che vuoi. Il punto di ingresso del tuo programma lo stabilisci tu.
    Puoi metterlo nella classe che rappresenta la finestra principale, come in una qualunque classe della tua applicazione.

    Generalmente si usa metterlo in una classe che stia in un package "più alto", ma non è una regola.

    Puoi addirittura creare una classe a sé stante contenente solo il main.

    E' del tutto indifferente.


    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2021 vBulletin Solutions, Inc. All rights reserved.