addActionListener(其他类)

时间:2017-05-16 07:47:44

标签: java jbutton

我有一个PanelLogiciel类(一个显示市场连接或接口的cardLayout)和Class PanelAcces(连接接口): 我想在PanelAcces的JButton上使用ActionListener,如果使用JButton,PanelLogic会从PanelAcces更改为另一个带有CardLayout的JPanel。希望你能提供帮助,如果这是一个愚蠢的问题,但却找不到......

package e_commerce;

import java.awt.CardLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.Connection;
import java.sql.SQLException;

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class PanelLogiciel extends JPanel implements ActionListener {
    CardLayout diaporama = new CardLayout();
    PanelAcces panelAcces;
    PanelSite panelSite;
    String connexion = new String("connexion");
    String site = new String("site");
    Connection connexBD;
    public PanelLogiciel(){
        this.setLayout(diaporama);
        panelAcces = new PanelAcces(this);
        panelSite = new PanelSite();
        //PanelProduit panelProduit = new PanelProduit();
        //PanelPanier panelPanier = new PanelPanier();


        //this.add(panelProduit);
        //this.add(panelPanier);
        this.add(panelAcces,connexion);
        this.add(panelSite,site);
    }

    public void actionPerformed(ActionEvent parEvt){
        Object source = parEvt.getSource();
        if (source == panelAcces.boutonConnexion){
            try {
                if (SQL.methodeConnexion(connexBD, panelAcces.entrerIdentifiant.getText(), panelAcces.entrerMotDePasse.getText()) == 0){
                    System.out.println("cc");
                    diaporama.show(panelSite,site); 
                }
                else {
                    System.out.println("marche ap");
                }
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }
}

和Class PanelAcces(连接接口):

package e_commerce;

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

import javax.swing.JButton;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JTextArea;
import javax.swing.JTextField;

public class PanelAcces extends JPanel implements ActionListener{
    JLabel labelIdentifiant; //= new JLabel("Identifiant:");
    JTextField entrerIdentifiant; //= new JTextArea();
    JLabel labelMotDePasse; //= new JLabel("Mot de passe:");
    JTextField entrerMotDePasse; //= new JTextArea();
    JButton boutonConnexion = new JButton("Connexion");
    PanelLogiciel panelLogiciel;


    public PanelAcces(PanelLogiciel parLogiciel){
        panelLogiciel = parLogiciel;
        labelIdentifiant = new JLabel("Identifiant:");
        entrerIdentifiant = new JTextField(10);
        labelMotDePasse = new JLabel("Mot de passe:");
        entrerMotDePasse = new JTextField(10);

        this.add(labelIdentifiant);
        this.add(entrerIdentifiant);
        //entrerIdentifiant.addActionListener(this);
        this.add(labelMotDePasse);
        this.add(entrerMotDePasse);
        //entrerMotDePasse.addActionListener(this);
        this.add(boutonConnexion);
        boutonConnexion.addActionListener(panelLogiciel);

    }


    public void actionPerformed(ActionEvent parEvt) {
        Object source = parEvt.getSource();
        if (source == boutonConnexion){
            System.out.println("beub");
        }

    }
}

0 个答案:

没有答案