IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Interface graphique java swing interrogeant une BDD


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2011
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Juin 2011
    Messages : 1
    Par défaut Interface graphique java swing interrogeant une BDD
    Bonjour à tous, je suis actuellement sur un projet et mon problème concerne l'interface au niveau des boutons. Mon code me paraît correct mais pourtant je n'arrive pas à ouvrir un fenêtre déjà créee en cliquant sur un bouton de ma fenetre Menu. Je vous envoie donc le code de ma classe Menu donnant accès aux autres fenetres :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    package IHM;
     
    import java.awt.Color;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;
     
    import javax.swing.*;
     
    public class Menu extends JFrame implements ActionListener {
     
        private JButton bouton1;
        private JButton bouton2;
        private JButton bouton3;
        private JButton bouton4;
        private JButton bouton5;
        private JButton bouton6;
        private JButton bouton7;
        private JButton bouton8;
     
     
     
        public Menu(){
     
            super();
            build();
        }
     
        private void build(){
            setTitle("Menu");
            setSize(320,240);
            setLocationRelativeTo(null);
            setResizable(false);
     
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setContentPane(buildContentPane());
     
        }
     
     
        public static void main (String args[]){
     
            Menu menu = new Menu();
            menu.setVisible(true);
     
     
     
        }
     
        private JPanel buildContentPane(){
            JPanel panel = new JPanel();
            panel.setLayout(new FlowLayout());
            panel.setBackground(Color.white);
            JLabel label = new JLabel("Bienvenue dans l'application Palmares");
            panel.add(label);
     
     
     
            JButton bouton1 = new JButton("Requete1");
            bouton1.addActionListener(this);
            panel.add(bouton1);
     
            JButton bouton2 = new JButton("Requete2");
            bouton2.addActionListener(this);
            panel.add(bouton2);
     
            JButton bouton3 = new JButton("Requete3");
            bouton3.addActionListener(this);
            panel.add(bouton3);
     
            JButton bouton4 = new JButton("Requete4");
            bouton4.addActionListener(this);
            panel.add(bouton4);
     
            JButton bouton5 = new JButton("Requete5");
            bouton5.addActionListener(this);
            panel.add(bouton5);
     
            JButton bouton6 = new JButton("Requete6");
            bouton6.addActionListener(this);
            panel.add(bouton6);
     
            JButton bouton7 = new JButton("Requete7");
            bouton7.addActionListener(this);
            panel.add(bouton7);
     
            JButton bouton8 = new JButton("Requete8");
            bouton8.addActionListener(this);
            panel.add(bouton8);
     
            return panel;
     
            }
     
        public void actionPerformed(ActionEvent e){
     
        Object source = e.getSource();
     
            if (source == bouton1 ){
     
                Fen1 fen1 = new Fen1();
                fen1.setVisible(true);
     
            }    
            if (source == bouton2 ){
     
                Fen2 fen2 = new Fen2();
                fen2.setVisible(true);
     
            }    
            if (source == bouton3 ){
     
                Fen3 fen3 = new Fen3();
                fen3.setVisible(true);
     
            }        
            if (source == bouton4 ){
     
                Fen4 fen4 = new Fen4();
                fen4.setVisible(true);
     
            }    
            if (source == bouton5 ){
     
                Fen5 fen5 = new Fen5();
                fen5.setVisible(true);
     
            }    
            if (source == bouton6 ){
     
                Fen6 fen6 = new Fen6();
                fen6.setVisible(true);
     
            }    
            if (source == bouton7 ){
     
                Fen7 fen7 = new Fen7();
                fen7.setVisible(true);
     
            }    
            if (source == bouton8 ){
     
                Fen8 fen8 = new Fen8();
                fen8.setVisible(true);
     
            }    
        }
    }
    voici le code de ma première fenetre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
     
    package IHM;
     
    import java.awt.Color;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
     
    import javax.swing.*;
    import javax.swing.text.JTextComponent;
     
    public class Fen1 extends JFrame{
     
     
     
        private JTextField field1;
        private JButton ret;
     
     
     
     
     
        public Fen1(){
     
            super();
            build();
     
     
     
        }
     
        private void build(){
     
            setTitle("Requete1");
            setSize(320,240);
            setLocationRelativeTo(null);
            setResizable(false);
     
            setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            setContentPane(buildContentPane());
     
        }
     
        public static void main (String args[]){
     
            Fen1 fen1 = new Fen1();
            fen1.setVisible(true);
     
     
     
        }
     
     
        private JPanel buildContentPane(){
     
            JPanel panel = new JPanel();
            panel.setLayout(new FlowLayout());
            panel.setBackground(Color.white);
     
            JLabel label = new JLabel("Veuillez entrer les parametres de recherche");
            panel.add(label);
     
            JButton ret = new JButton("Retour Menu");
            panel.add(ret);
     
            JButton val = new JButton(new RechercheAction(this, "Valider"));
            panel.add(val);
     
     
     
            field1 = new JTextField();
            field1.setColumns(6);
            panel.add(field1);
     
            return panel;
     
        }
     
        public JTextField getField1(){
     
            return field1;
     
     
        }
     
        public JTextComponent getLabel() {
            // TODO Auto-generated method stub
            return null;
        }    
     
        public void actionPerformed(ActionEvent e){
     
        Object source = e.getSource();    
     
        if (source == ret ){
     
            Menu menu = new Menu();
            menu.setVisible(true);
        }    
     
     
        }
     
     
    }
    et le code qui permet d'executer la requete en fonction des parametres entrés par l'utilisateur pour la première fenetre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    package IHM;
     
    import java.awt.Color;
    import java.awt.FlowLayout;
    import java.awt.event.ActionEvent;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
     
    import javax.swing.*;
     
    public class RechercheAction extends AbstractAction {
     
        private static Fen1 fen1;
        static Connection conn;
        static Statement st;
        static String ch;
        static float resultat1;
        static float resultat2;
     
     
     
        public RechercheAction(Fen1 fen1, String texte){
        super(texte);
        this.fen1 = fen1;
        }
        public void actionPerformed(ActionEvent e) {
        //Action lors du clic sur le bouton Valider
        }
     
        static String periodeString = fen1.getField1().getText(); //On récupère la valeur dans le champ
        static double periode = Double.parseDouble(periodeString); //On convertit cette valeur en un nombre
     
     
        public static void req1 () throws SQLException
        {
     
     
            String pilote = "oracle.jdbc.OracleDriver";
            conn = null;
            String URL = "jdbc:oracle:thin:@10.121.200.244:1521:com";
            String USER = "samuel"; 
            String PASSWD = "samuel"; 
            try{
                Class.forName(pilote);
     
                conn =DriverManager.getConnection(URL,USER, PASSWD);
     
            }catch(Exception e){
                System.out.println("pas de connexion");    
            }      
     
     
            st = conn.createStatement();
            ch = "SELECT periode,sum(total_valeur_stat) AS valeur_stat FROM collecte_cisd WHERE periode LIKE "+ periode + "AND flux='3' AND comex='C' GROUP BY periode ORDER BY periode";    
            try
            {
     
     
                ResultSet rs = st.executeQuery(ch);
                while(rs.next()){
     
                    resultat1 = rs.getFloat("periode");
                    resultat2 = rs.getFloat("valeur_stat");
     
                }
                rs.close();
                st.close();
     
              }
              catch (SQLException e)
              {
     
              }
     
              fen1.getLabel().setText("Période = " + resultat1);
              fen1.getLabel().setText("Valeur statistique = " + resultat2);
     
        } 
     
     
     
    }

    Je sais que le code est assez long même s'il s'agit d'une partie de mon projet. Donc j'espère recevoir une réponse le plus rapidement possible.Merci d'avance

  2. #2
    Membre éprouvé
    Avatar de _skip
    Homme Profil pro
    Développeur d'applications
    Inscrit en
    Novembre 2005
    Messages
    2 898
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Développeur d'applications
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 898
    Par défaut
    Salut,
    Si tu veux une réponse, il faut que tu isoles un peu le problème car personne n'a le temps de transposer ton projet dans son environnement.
    Par ailleurs lorsque tu postes du code, utilise la balise [code].

    Donc pour en revenir à ton problème, ça peut être n'importe quoi donc il nous faut le message d'erreur reçu ou imprimé dans la console. Pour cela il faut déjà que tu évites les blocs catch vides comme celui ci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    catch (SQLException e)
    {
     
    }
    Car l'exception sera jetée sous le tapis et tu sauras jamais ce qui s'est passé lorsque ça fonctionne pas.

Discussions similaires

  1. Intégrer du JavaScript dans une interface graphique Java
    Par tamara6 dans le forum Composants
    Réponses: 2
    Dernier message: 19/04/2013, 15h39
  2. Réponses: 0
    Dernier message: 24/12/2009, 16h21
  3. affichage d'un CV dans une interface graphique JAVA
    Par midoscofield dans le forum Documents
    Réponses: 2
    Dernier message: 11/05/2009, 15h05
  4. Interface graphique java swing awt toolkit
    Par MaxLaMenaX dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 06/11/2008, 15h39
  5. Composants à utiliser pour une interface graphique Java
    Par nicolas.pied dans le forum Composants
    Réponses: 4
    Dernier message: 28/11/2005, 20h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo