Grosse MàJ
This commit is contained in:
Binary file not shown.
@ -0,0 +1,182 @@
|
||||
package fr.blankoworld.connexionBDD;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DatabaseMetaData;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
|
||||
/**
|
||||
* @author 3dossmanno
|
||||
*/
|
||||
public class Connexion {
|
||||
|
||||
|
||||
// Donnees privees
|
||||
private String serveur;
|
||||
private String port;
|
||||
private String bdd;
|
||||
private String id;
|
||||
private String mdp;
|
||||
|
||||
private Connection connection;
|
||||
|
||||
private ResultSet result;
|
||||
|
||||
// Constructeur
|
||||
public Connexion(String server, String port, String database, String login, String password)
|
||||
{
|
||||
this.serveur = server;
|
||||
this.port = port;
|
||||
this.bdd = database;
|
||||
this.id = login;
|
||||
this.mdp = password;
|
||||
}
|
||||
|
||||
// Ascesseurs, etc ...
|
||||
public String getServer(){
|
||||
return this.serveur;
|
||||
}
|
||||
|
||||
public void setServer(String chaine){
|
||||
this.serveur = chaine;
|
||||
}
|
||||
|
||||
/**
|
||||
* @return the port
|
||||
* @uml.property name="port"
|
||||
*/
|
||||
public String getPort(){
|
||||
return this.port;
|
||||
}
|
||||
|
||||
/**
|
||||
* @param port the port to set
|
||||
* @uml.property name="port"
|
||||
*/
|
||||
public void setPort(String chaine){
|
||||
this.port = chaine;
|
||||
}
|
||||
|
||||
public String getDatabase(){
|
||||
return this.bdd;
|
||||
}
|
||||
|
||||
public void setDatabase(String chaine){
|
||||
this.bdd = chaine;
|
||||
}
|
||||
|
||||
public String getLogin(){
|
||||
return this.id;
|
||||
}
|
||||
|
||||
public void setLogin(String chaine){
|
||||
this.id = chaine;
|
||||
}
|
||||
|
||||
public String getPassword(){
|
||||
return this.mdp;
|
||||
}
|
||||
|
||||
public void setPassword(String chaine){
|
||||
this.mdp = chaine;
|
||||
}
|
||||
|
||||
// Verification presence du pilote
|
||||
public String[] driverPresent(){
|
||||
String[] tableau = new String[2];
|
||||
|
||||
try{
|
||||
// On verifie que le pilote Oracle est disponible
|
||||
Class.forName( "oracle.jdbc.driver.OracleDriver" );
|
||||
tableau[0] = "0";
|
||||
tableau[1] = "Pilote Oracle trouve";
|
||||
}
|
||||
catch(ClassNotFoundException ex){
|
||||
tableau[0] = "1";
|
||||
tableau[1] = "Pilote pas trouve";
|
||||
}
|
||||
|
||||
return tableau;
|
||||
}
|
||||
|
||||
// Connexion a la base
|
||||
// Doit pouvoir retourner un tableau avec une chaine expliquant si oui ou non nous sommes connectes, et une autre donnant l'erreur
|
||||
// Ceci permet d'avoir des messages en francais ...
|
||||
public String[] connect(){
|
||||
String[] tableau = new String[2];
|
||||
|
||||
// S'il l'est, nous continuons en preparant notre creme
|
||||
connection = null;
|
||||
String url = "jdbc:oracle:thin:@" + this.serveur + ":" + this.port + ":" + this.bdd;
|
||||
String identifiant = this.id;
|
||||
String mdp = this.mdp.toString();
|
||||
|
||||
// puis nous tentons d'appliquer la creme
|
||||
try {
|
||||
connection = DriverManager.getConnection(url, identifiant, mdp);
|
||||
tableau[0] = "0";
|
||||
tableau[1] = "Acces a la base: Accepte.\n";
|
||||
|
||||
tableau[1] += "Acces: " + url + "\n";
|
||||
|
||||
DatabaseMetaData metaData;
|
||||
|
||||
metaData = connection.getMetaData();
|
||||
tableau[1] += "Driver: " + metaData.getDriverName() + "\n";
|
||||
tableau[1] += "Version: " + metaData.getDriverVersion() + "\n";
|
||||
|
||||
}
|
||||
catch(SQLException sqle) {
|
||||
tableau[0] = "1";
|
||||
tableau[1] = "Acces a la base: Refuse.\n" + sqle.getMessage();
|
||||
}
|
||||
|
||||
return tableau;
|
||||
}
|
||||
|
||||
// Deconnexion a la base de donnees
|
||||
public String[] disconnect(){
|
||||
String[] tableau = new String[2];
|
||||
|
||||
if(connection != null){
|
||||
try{
|
||||
connection.close();
|
||||
tableau[0] = "0";
|
||||
tableau[1] = "Connexion fermee.";
|
||||
} catch(Exception e){
|
||||
tableau[0] = "1";
|
||||
tableau[1] = e.getMessage();
|
||||
}
|
||||
}
|
||||
|
||||
return tableau;
|
||||
}
|
||||
|
||||
public String[] sendQuery(String query){
|
||||
String[] tableau = new String[2];
|
||||
|
||||
try {
|
||||
// Creation d'une requete
|
||||
Statement requete = connection.createStatement();
|
||||
// Recuperation du resultat de la requete
|
||||
this.result = requete.executeQuery(query); // executeQuery ne retourne jamais null !
|
||||
|
||||
// Requete reussie
|
||||
tableau[0] = "0";
|
||||
tableau[1] = "Requete: Envoyee et recue.";
|
||||
|
||||
} catch (Exception ex){
|
||||
tableau[0] = "1";
|
||||
tableau[1] = "Requete: Non reussie.";
|
||||
}
|
||||
|
||||
return tableau;
|
||||
}
|
||||
|
||||
public ResultSet getQueryResult(){
|
||||
return this.result;
|
||||
}
|
||||
|
||||
}
|
File diff suppressed because it is too large
Load Diff
Binary file not shown.
@ -0,0 +1,95 @@
|
||||
package fr.blankoworld.connexionBDD;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
|
||||
public class Principal {
|
||||
|
||||
public static void main(String args[]){
|
||||
|
||||
System.out.println("## D<>but");
|
||||
|
||||
try{
|
||||
Class.forName( "oracle.jdbc.driver.OracleDriver" );
|
||||
System.out.println("## Trouv<75>");
|
||||
}
|
||||
catch(ClassNotFoundException ex){
|
||||
System.out.println("## Pas trouv<75>");
|
||||
}
|
||||
|
||||
|
||||
Connection connection = null;
|
||||
String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920";
|
||||
String identifiant = "dut";
|
||||
String mdp = "dut";
|
||||
|
||||
try {
|
||||
|
||||
connection = DriverManager.getConnection(url, identifiant, mdp);
|
||||
System.out.println("## Acc<63>s <20> la base: Accept<70>.");
|
||||
|
||||
try {
|
||||
// Cr<43>ation d'une requ<71>te
|
||||
Statement requete = connection.createStatement();
|
||||
// R<>cup<75>ration du r<>sultat de la requ<71>te
|
||||
ResultSet resultat = requete.executeQuery("SELECT * FROM ENSEIGNANTS"); // executeQuery ne retourne jamais null !
|
||||
System.out.println("## Requ<71>te: Envoy<6F>e et re<72>ue.");
|
||||
|
||||
// On catalogue l'ensemble des donn<6E>es relatives <20> la table r<>sultante (pas le contenu mes les donn<6E>es de colonnes, etc ..)
|
||||
ResultSetMetaData rsmd = resultat.getMetaData();
|
||||
|
||||
// Nombre de colonnes (Commence <20> 1 !)
|
||||
// int i = rsmd.getColumnCount();
|
||||
// System.out.println("Nombre de colonne: " + i);
|
||||
|
||||
// Donner les ent<6E>tes de colonnes
|
||||
// for(int j = 1; j < i; j++){
|
||||
// System.out.print(rsmd.getColumnName(j) + " ");
|
||||
// }
|
||||
System.out.println(resultat.toString());
|
||||
|
||||
System.out.println(rsmd.getColumnName(2) + " " + rsmd.getColumnName(3));
|
||||
|
||||
resultat.isBeforeFirst();
|
||||
System.out.println();
|
||||
|
||||
resultat.next();
|
||||
// On s'occupe de la premi<6D>re ligne
|
||||
//System.out.println(resultat.toString()); // Donne la connexion actuelle
|
||||
System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM"));
|
||||
|
||||
// Affichage du r<>sultat
|
||||
resultat.next();
|
||||
// traitement de la premi<6D>re ligne
|
||||
System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM"));
|
||||
|
||||
while(resultat.next()){
|
||||
//traitement des autres lignes
|
||||
System.out.println(resultat.getObject("NOM") + " " + resultat.getObject("PRENOM"));
|
||||
}
|
||||
|
||||
} catch (Exception ex){
|
||||
System.out.println("## Requ<71>te: Non r<>ussie.");
|
||||
}
|
||||
} catch (SQLException sqle) {
|
||||
|
||||
System.out.println("## Acc<63>s <20> la base: Refus<75>.");
|
||||
// TODO: handle exception
|
||||
} finally {
|
||||
if(connection!=null){
|
||||
try{connection.close();
|
||||
|
||||
System.out.println("## Connexion ferm<72>e.");
|
||||
} catch(Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
System.out.println("## Fin");
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
@ -0,0 +1,99 @@
|
||||
package fr.blankoworld.connexionBDD;
|
||||
|
||||
import java.sql.Connection;
|
||||
import java.sql.DriverManager;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
import java.sql.Statement;
|
||||
|
||||
public class testConnexion {
|
||||
|
||||
public static void main(String args[]){
|
||||
|
||||
System.out.println("## D<>but");
|
||||
|
||||
try{
|
||||
Class.forName( "oracle.jdbc.driver.OracleDriver" );
|
||||
System.out.println("## Trouv<75>");
|
||||
}
|
||||
catch(ClassNotFoundException ex){
|
||||
System.out.println("## Pas trouv<75>");
|
||||
}
|
||||
|
||||
|
||||
Connection connection = null;
|
||||
String url = "jdbc:oracle:thin:@grive.u-strasbg.fr:1521:v920";
|
||||
String identifiant = "dut";
|
||||
String mdp = "dut";
|
||||
|
||||
try {
|
||||
|
||||
connection = DriverManager.getConnection(url, identifiant, mdp);
|
||||
System.out.println("## Acc<63>s <20> la base: Accept<70>.");
|
||||
|
||||
try {
|
||||
// Cr<43>ation d'une requ<71>te
|
||||
Statement requete = connection.createStatement();
|
||||
// R<>cup<75>ration du r<>sultat de la requ<71>te
|
||||
ResultSet resultat = requete.executeQuery("SELECT * FROM GAULOIS"); // executeQuery ne retourne jamais null !
|
||||
System.out.println("## Requ<71>te: Envoy<6F>e et re<72>ue.");
|
||||
|
||||
int nbreLignes = 0;
|
||||
while(resultat.next()){
|
||||
nbreLignes++;
|
||||
}
|
||||
System.out.println("Nbre: " + nbreLignes);
|
||||
|
||||
|
||||
// On catalogue l'ensemble des donn<6E>es relatives <20> la table r<>sultante (pas le contenu mes les donn<6E>es de colonnes, etc ..)
|
||||
ResultSetMetaData rsmd = resultat.getMetaData();
|
||||
|
||||
// Nombre de colonnes (Commence <20> 1 !)
|
||||
int i = rsmd.getColumnCount();
|
||||
// System.out.println("Nombre de colonne: " + i);
|
||||
|
||||
// Donner les ent<6E>tes de colonnes
|
||||
for(int j = 1; j < i; j++){
|
||||
System.out.print(rsmd.getColumnName(j) + " ");
|
||||
}
|
||||
System.out.println();
|
||||
|
||||
// Cr<43>ation d'une requ<71>te
|
||||
Statement requete2 = connection.createStatement();
|
||||
// R<>cup<75>ration du r<>sultat de la requ<71>te
|
||||
ResultSet jeu = requete2.executeQuery("SELECT * FROM GAULOIS"); // executeQuery ne retourne jamais null !
|
||||
System.out.println("## Requ<71>te: Envoy<6F>e et re<72>ue.");
|
||||
|
||||
while(jeu.next()){
|
||||
//traitement des autres lignes
|
||||
for(int j = 1; j < i; j++){
|
||||
System.out.print(jeu.getObject(j) + " ");
|
||||
if(j != i - 1){
|
||||
System.out.print("");
|
||||
}
|
||||
}
|
||||
System.out.println();
|
||||
}
|
||||
|
||||
} catch (Exception ex){
|
||||
System.out.println("## Requ<71>te: Non r<>ussie.");
|
||||
}
|
||||
} catch (SQLException sqle) {
|
||||
|
||||
System.out.println("## Acc<63>s <20> la base: Refus<75>.");
|
||||
// TODO: handle exception
|
||||
} finally {
|
||||
if(connection!=null){
|
||||
try{connection.close();
|
||||
|
||||
System.out.println("## Connexion ferm<72>e.");
|
||||
} catch(Exception e){
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
System.out.println("## Fin");
|
||||
}
|
||||
|
||||
}
|
Binary file not shown.
BIN
workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.class
Normal file
Binary file not shown.
223
workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.java
Normal file
223
workspace/RequeteSimple/fr/blankoworld/donnees/JTableModel.java
Normal file
@ -0,0 +1,223 @@
|
||||
package fr.blankoworld.donnees;
|
||||
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.ResultSetMetaData;
|
||||
import java.sql.SQLException;
|
||||
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTable;
|
||||
import javax.swing.table.AbstractTableModel;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.GridLayout;
|
||||
|
||||
import fr.blankoworld.connexionBDD.Connexion;
|
||||
|
||||
public class JTableModel extends JPanel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
// Utilise pour le debugage, lors de l'insertion de donnees (modification)
|
||||
// private boolean DEBUG = false;
|
||||
|
||||
public JTableModel(Connexion connectionObject, String requete) {
|
||||
super(new GridLayout(1,0));
|
||||
|
||||
JTable table = new JTable(new MyTableModel(connectionObject, requete));
|
||||
table.setPreferredScrollableViewportSize(new Dimension(500, 70));
|
||||
table.setFillsViewportHeight(true);
|
||||
|
||||
// Ajout de la table dans un panneau deroulant.
|
||||
JScrollPane scrollPane = new JScrollPane(table);
|
||||
|
||||
//Ajout du panneau deroulant dans ce panneau ci.
|
||||
add(scrollPane);
|
||||
}
|
||||
|
||||
class MyTableModel extends AbstractTableModel {
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
private String[] columnNames;
|
||||
private Object[][] data;
|
||||
|
||||
public MyTableModel(Connexion connectionObject, String requete){
|
||||
ResultSet resultat = connectionObject.getQueryResult();
|
||||
|
||||
try {
|
||||
// On catalogue l'ensemble des donnees relatives a la table resultante (pas le contenu mais les donnees de colonnes, et le nombre de lignes)
|
||||
ResultSetMetaData rsmd = resultat.getMetaData();
|
||||
|
||||
// Nombre de colonnes (Commence a 1 !)
|
||||
int i = rsmd.getColumnCount();
|
||||
|
||||
// Donner les entetes de colonnes
|
||||
String[] enteteColonnes = new String[i];
|
||||
for (int j = 1; j < i + 1; j++) {
|
||||
enteteColonnes[j - 1] = rsmd.getColumnName(j);
|
||||
}
|
||||
|
||||
// Nombre de lignes
|
||||
int nbreLigne = 0;
|
||||
while (resultat.next()){
|
||||
nbreLigne++;
|
||||
}
|
||||
|
||||
// Tableau de donnees
|
||||
Object[][] tableauDonnees = new Object[nbreLigne][i];
|
||||
for(int ligne = 0; ligne < nbreLigne; ligne++){
|
||||
for(int colonne = 0; colonne < i; colonne++){
|
||||
tableauDonnees[ligne][colonne] = "";
|
||||
}
|
||||
}
|
||||
|
||||
//On refait la requete qui semble avoir fonctionne la premiere fois
|
||||
connectionObject.sendQuery(requete);
|
||||
ResultSet donnees = connectionObject.getQueryResult();
|
||||
|
||||
// Incrementeur de ligne
|
||||
int incrementeur = 0;
|
||||
|
||||
while (donnees.next()) {
|
||||
//traitement des autres lignes
|
||||
for (int j = 1; j < i + 1; j++) {
|
||||
tableauDonnees[incrementeur][j - 1] = donnees.getObject(j);
|
||||
}
|
||||
incrementeur++;
|
||||
}
|
||||
|
||||
columnNames = enteteColonnes;
|
||||
data = tableauDonnees;
|
||||
|
||||
} catch (SQLException e) {
|
||||
// On remplit par des tableaux vides
|
||||
columnNames = null;
|
||||
data = null;
|
||||
}
|
||||
|
||||
// // Jeux de tests (pour voir si cela fonctionne)
|
||||
// columnNames = new String[] {"First Name",
|
||||
// "Last Name",
|
||||
// "Sport",
|
||||
// "# of Years",
|
||||
// "Vegetarian"};
|
||||
//
|
||||
// data = new Object[][] {
|
||||
// {"Mary", "Campione",
|
||||
// "Snowboarding", new Integer(5), new Boolean(false)},
|
||||
// {"Alison", "Huml",
|
||||
// "Rowing", new Integer(3), new Boolean(true)},
|
||||
// {"Kathy", "Walrath",
|
||||
// "Knitting", new Integer(2), new Boolean(false)},
|
||||
// {"Sharon", "Zakhour",
|
||||
// "Speed reading", new Integer(20), new Boolean(true)},
|
||||
// {"Philip", "Milne",
|
||||
// "Pool", new Integer(10), new Boolean(false)}
|
||||
// };
|
||||
}
|
||||
|
||||
public int getColumnCount() {
|
||||
return columnNames.length;
|
||||
}
|
||||
|
||||
public int getRowCount() {
|
||||
return data.length;
|
||||
}
|
||||
|
||||
public String getColumnName(int col) {
|
||||
return columnNames[col];
|
||||
}
|
||||
|
||||
public Object getValueAt(int row, int col) {
|
||||
return data[row][col];
|
||||
}
|
||||
|
||||
/*
|
||||
* Commentaire donne par Sun, concernant les prochaines methodes
|
||||
* JTable uses this method to determine the default renderer/
|
||||
* editor for each cell. If we didn't implement this method,
|
||||
* then the last column would contain text ("true"/"false"),
|
||||
* rather than a check box.
|
||||
*/
|
||||
public Class getColumnClass(int c) {
|
||||
return getValueAt(0, c).getClass();
|
||||
}
|
||||
|
||||
/*
|
||||
* Don't need to implement this method unless your table's
|
||||
* editable.
|
||||
*/
|
||||
// public boolean isCellEditable(int row, int col) {
|
||||
// //Note that the data/cell address is constant,
|
||||
// //no matter where the cell appears onscreen.
|
||||
// if (col < 2) {
|
||||
// return false;
|
||||
// } else {
|
||||
// return true;
|
||||
// }
|
||||
// }
|
||||
|
||||
/*
|
||||
* Don't need to implement this method unless your table's
|
||||
* data can change.
|
||||
*/
|
||||
// public void setValueAt(Object value, int row, int col) {
|
||||
// if (DEBUG) {
|
||||
// System.out.println("Setting value at " + row + "," + col
|
||||
// + " to " + value
|
||||
// + " (an instance of "
|
||||
// + value.getClass() + ")");
|
||||
// }
|
||||
//
|
||||
// data[row][col] = value;
|
||||
// fireTableCellUpdated(row, col);
|
||||
//
|
||||
// if (DEBUG) {
|
||||
// System.out.println("New value of data:");
|
||||
// printDebugData();
|
||||
// }
|
||||
// }
|
||||
|
||||
// private void printDebugData() {
|
||||
// int numRows = getRowCount();
|
||||
// int numCols = getColumnCount();
|
||||
//
|
||||
// for (int i=0; i < numRows; i++) {
|
||||
// System.out.print(" row " + i + ":");
|
||||
// for (int j=0; j < numCols; j++) {
|
||||
// System.out.print(" " + data[i][j]);
|
||||
// }
|
||||
// System.out.println();
|
||||
// }
|
||||
// System.out.println("--------------------------");
|
||||
// }
|
||||
}
|
||||
|
||||
/**
|
||||
* Create the GUI and show it. For thread safety,
|
||||
* this method should be invoked from the
|
||||
* event-dispatching thread.
|
||||
*/
|
||||
// private static void createAndShowGUI() {
|
||||
// //Create and set up the window.
|
||||
// JFrame frame = new JFrame("TableDemo");
|
||||
// frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
//
|
||||
// //Create and set up the content pane.
|
||||
// JTableModel newContentPane = new JTableModel();
|
||||
// newContentPane.setOpaque(true); //content panes must be opaque
|
||||
// frame.setContentPane(newContentPane);
|
||||
//
|
||||
// //Display the window.
|
||||
// frame.pack();
|
||||
// frame.setVisible(true);
|
||||
// }
|
||||
//
|
||||
// public static void main(String[] args) {
|
||||
// //Schedule a job for the event-dispatching thread:
|
||||
// //creating and showing this application's GUI.
|
||||
// javax.swing.SwingUtilities.invokeLater(new Runnable() {
|
||||
// public void run() {
|
||||
// createAndShowGUI();
|
||||
// }
|
||||
// });
|
||||
// }
|
||||
}
|
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$1.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$1.class
Normal file
Binary file not shown.
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$2.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion$2.class
Normal file
Binary file not shown.
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.class
Normal file
Binary file not shown.
211
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.java
Normal file
211
workspace/RequeteSimple/fr/blankoworld/ihm/IHMConnexion.java
Normal file
@ -0,0 +1,211 @@
|
||||
package fr.blankoworld.ihm;
|
||||
|
||||
import fr.blankoworld.connexionBDD.Connexion;
|
||||
import fr.blankoworld.ihm.IHMPrincipale;
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.GridLayout;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JPasswordField;
|
||||
import javax.swing.JTextField;
|
||||
|
||||
/**
|
||||
* @author 3dossmanno
|
||||
*/
|
||||
public class IHMConnexion extends JFrame {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
// Donnees privees
|
||||
|
||||
// Creation des champs textes
|
||||
private JTextField jtextServeur;
|
||||
private JTextField jtextPort;
|
||||
private JTextField jtextBase;
|
||||
private JTextField jtextIdentifiant;
|
||||
private JPasswordField jtextMdp;
|
||||
|
||||
private JButton jOk;
|
||||
|
||||
// Creation d'un principal, pour utiliser ses methodes
|
||||
private IHMPrincipale pr;
|
||||
|
||||
// Creation de la classe permettant la connexion a la base de donnees
|
||||
private Connexion connexionToBdd;
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
}
|
||||
|
||||
/**
|
||||
* <h3>IHMConnexion</h3>
|
||||
* <p>Interface graphique pour se connecter a une base de donnees.<br />
|
||||
* Demande en parametre une IHMPrincipale, de type IHMPrincipale, et 5 parametres : Le serveur, le port, la base de donnees, l'identifiant
|
||||
* et le mot de passe par defaut.</p>
|
||||
* <p>Retourne en contrepartie un objet Connexion qui a tout les parametres de l'utilisateur et qui permet de se connecter.</p>
|
||||
* <p>L'objet Connexion provient du paquet fr.blankoworld.connexionBDD.Connexion</p>
|
||||
*/
|
||||
public IHMConnexion(IHMPrincipale pr, String defaultServer, String defaultPort, String defaultDatabase, String defaultLogin, String defaultMdp) {
|
||||
|
||||
this.pr = pr;
|
||||
|
||||
connexionToBdd = new Connexion(defaultServer, defaultPort, defaultDatabase, defaultLogin, defaultMdp);
|
||||
|
||||
// Creation des etiquettes
|
||||
JLabel jlabelServeur = new JLabel(" Serveur: ");
|
||||
JLabel jlabelPort = new JLabel(" Port: ");
|
||||
JLabel jlabelBase = new JLabel(" Base de donnees: ");
|
||||
JLabel jlabelIdentifiant = new JLabel(" Identifiant: ");
|
||||
JLabel jlabelMdp = new JLabel(" Mot de passe: ");
|
||||
|
||||
// Creation des champs textes
|
||||
jtextServeur = new JTextField(connexionToBdd.getServer());
|
||||
jtextPort = new JTextField(connexionToBdd.getPort());
|
||||
jtextBase = new JTextField(connexionToBdd.getDatabase());
|
||||
jtextIdentifiant = new JTextField(connexionToBdd.getLogin());
|
||||
jtextMdp = new JPasswordField(connexionToBdd.getPassword());
|
||||
jtextMdp.setEchoChar('*');
|
||||
|
||||
// Creation des boutons
|
||||
jOk = new JButton("OK");
|
||||
JButton jAnnuler = new JButton("Annuler");
|
||||
|
||||
//** Creation des panneaux **//
|
||||
// Panneau au centre
|
||||
JPanel Panneau_Centre = new JPanel();
|
||||
Panneau_Centre.setLayout(new GridLayout(1,2));
|
||||
|
||||
// Donner un titre a notre panneau
|
||||
//Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Salut"));
|
||||
|
||||
// Panneau a gauche du panneau centre
|
||||
JPanel Panneau_Centre_Gauche = new JPanel();
|
||||
Panneau_Centre_Gauche.setLayout(new GridLayout(5,1));
|
||||
|
||||
// Panneau a droite du panneau centre
|
||||
JPanel Panneau_Centre_Droite = new JPanel();
|
||||
Panneau_Centre_Droite.setLayout(new GridLayout(5,1));
|
||||
|
||||
// Panneau en bas
|
||||
JPanel Panneau_Bas = new JPanel();
|
||||
|
||||
// Ajout des etiquettes au panneau centre a gauche
|
||||
Panneau_Centre_Gauche.add(jlabelServeur);
|
||||
Panneau_Centre_Gauche.add(jlabelBase);
|
||||
Panneau_Centre_Gauche.add(jlabelPort);
|
||||
Panneau_Centre_Gauche.add(jlabelBase);
|
||||
Panneau_Centre_Gauche.add(jlabelIdentifiant);
|
||||
Panneau_Centre_Gauche.add(jlabelMdp);
|
||||
|
||||
// Ajout des champs textes au panneau centre droit
|
||||
Panneau_Centre_Droite.add(jtextServeur);
|
||||
Panneau_Centre_Droite.add(jtextBase);
|
||||
Panneau_Centre_Droite.add(jtextPort);
|
||||
Panneau_Centre_Droite.add(jtextBase);
|
||||
Panneau_Centre_Droite.add(jtextIdentifiant);
|
||||
Panneau_Centre_Droite.add(jtextMdp);
|
||||
|
||||
// Ajout des boutons au panneau bas
|
||||
Panneau_Bas.add(jOk);
|
||||
Panneau_Bas.add(jAnnuler);
|
||||
|
||||
// Ajout des panneaux droits et gauche au panneau centre
|
||||
Panneau_Centre.add(Panneau_Centre_Gauche);
|
||||
Panneau_Centre.add(Panneau_Centre_Droite);
|
||||
|
||||
// Ajout des panneaux a la fenetre
|
||||
this.getContentPane().setLayout(new BorderLayout());
|
||||
this.add(Panneau_Centre, BorderLayout.CENTER);
|
||||
this.add(Panneau_Bas, BorderLayout.SOUTH);
|
||||
|
||||
this.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
|
||||
|
||||
this.setSize(350,200);
|
||||
this.setLocation(200,200);
|
||||
this.setResizable(false);
|
||||
this.setTitle("Connexion a une base de donnees");
|
||||
|
||||
// ********************************************** //
|
||||
|
||||
jOk.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
valider();
|
||||
}
|
||||
});
|
||||
|
||||
jAnnuler.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
annuler();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void valider(){
|
||||
String message;
|
||||
int resultatConfirmation;
|
||||
|
||||
// Recuperation des valeurs entrees dans les champs textes
|
||||
message = "La connexion va etre etablie, les valeurs suivantes sont - elles exactes ? : \n\n";
|
||||
message += "Serveur : " + this.jtextServeur.getText() + "\n";
|
||||
message += "Port : " + this.jtextPort.getText() + "\n";
|
||||
message += "Base de donnees : " + this.jtextBase.getText() + "\n";
|
||||
message += "Identifiant : " + this.jtextIdentifiant.getText() + "\n";
|
||||
message += "Mot de passe (crypte) : " + this.jtextMdp.getPassword().toString() + "\n";
|
||||
|
||||
// Affichage du message de confirmation
|
||||
resultatConfirmation = JOptionPane.showConfirmDialog(this, message, "Confirmation", JOptionPane.YES_NO_OPTION);
|
||||
|
||||
// Nous confirmons ou pas ?
|
||||
if(resultatConfirmation == 0){
|
||||
|
||||
String rose = new String(this.jtextMdp.getPassword());
|
||||
// Si oui nous enregistrons les valeurs dans notre objet connexion
|
||||
connexionToBdd.setServer(this.jtextServeur.getText());
|
||||
connexionToBdd.setPort(this.jtextPort.getText());
|
||||
connexionToBdd.setDatabase(this.jtextBase.getText());
|
||||
connexionToBdd.setLogin(this.jtextIdentifiant.getText());
|
||||
connexionToBdd.setPassword(rose);
|
||||
|
||||
// Puis nous recuperons la main et affichons a nouveau la fenetre principale en lui passant l'objet de connexion
|
||||
this.dispose();
|
||||
this.pr.setVisible(true);
|
||||
this.pr.confirmationConnexion(connexionToBdd);
|
||||
this.invalidate();
|
||||
}
|
||||
else{
|
||||
// Sinon aucun traitement n'est effectue
|
||||
}
|
||||
}
|
||||
|
||||
private void annuler(){
|
||||
this.dispose();
|
||||
}
|
||||
|
||||
public void driverExist(){
|
||||
// On verifie la presence du pilote JDBC, et de sa fonctionnalite
|
||||
if(Integer.parseInt(connexionToBdd.driverPresent()[0]) == 1){
|
||||
// Si pilote non present on desactive le bouton ok et autres boutons attaches
|
||||
this.jtextServeur.setEnabled(false);
|
||||
this.jtextPort.setEnabled(false);
|
||||
this.jtextBase.setEnabled(false);
|
||||
this.jtextIdentifiant.setEnabled(false);
|
||||
this.jtextMdp.setEnabled(false);
|
||||
|
||||
this.jOk.setEnabled(false);
|
||||
|
||||
JOptionPane.showMessageDialog(this, "Pilote introuvable ou non fonctionnel.", "Avertissement", JOptionPane.ERROR_MESSAGE);
|
||||
}
|
||||
else{
|
||||
JOptionPane.showMessageDialog(this, "Pilote trouve.", "Information", JOptionPane.INFORMATION_MESSAGE);
|
||||
}
|
||||
}
|
||||
}
|
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.class
Normal file
Binary file not shown.
282
workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.java
Normal file
282
workspace/RequeteSimple/fr/blankoworld/ihm/IHMPrincipale.java
Normal file
@ -0,0 +1,282 @@
|
||||
package fr.blankoworld.ihm;
|
||||
|
||||
// Importations automatiques
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
import java.awt.event.WindowEvent;
|
||||
import java.awt.event.WindowListener;
|
||||
|
||||
import javax.swing.BorderFactory;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JMenu;
|
||||
import javax.swing.JMenuBar;
|
||||
import javax.swing.JMenuItem;
|
||||
import javax.swing.JOptionPane;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JTextArea;
|
||||
import javax.swing.border.BevelBorder;
|
||||
|
||||
import fr.blankoworld.connexionBDD.Connexion;
|
||||
import fr.blankoworld.donnees.JTableModel;
|
||||
|
||||
/**
|
||||
* @author 3dossmanno
|
||||
*/
|
||||
public class IHMPrincipale extends JFrame {
|
||||
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
|
||||
private JTextArea zoneTexteStatut;
|
||||
|
||||
private JMenuItem MenuBdd_Connexion;
|
||||
private JMenuItem MenuBdd_Fermer;
|
||||
|
||||
private JMenu MenuAction;
|
||||
private JPanel Panneau_Centre;
|
||||
|
||||
private boolean connecte = false;
|
||||
|
||||
private IHMConnexion conn;
|
||||
private Connexion objetConnexion;
|
||||
|
||||
private JTableModel tableDonnees;
|
||||
|
||||
/**
|
||||
* @param args
|
||||
*/
|
||||
public static void main(String[] args) {
|
||||
// TODO Auto-generated method stub
|
||||
new IHMPrincipale().setVisible(true);
|
||||
}
|
||||
|
||||
private IHMPrincipale() {
|
||||
|
||||
// Creation du menu Base de donnees
|
||||
JMenu MenuBdd = new JMenu("Base de donnees");
|
||||
MenuBdd_Connexion = new JMenuItem("Connexion");
|
||||
MenuBdd_Fermer = new JMenuItem("Fermer");
|
||||
MenuBdd_Fermer.setEnabled(false);
|
||||
JMenuItem MenuBdd_Quitter = new JMenuItem("Quitter");
|
||||
MenuBdd.add(MenuBdd_Connexion);
|
||||
MenuBdd.add(MenuBdd_Fermer);
|
||||
MenuBdd.addSeparator();
|
||||
MenuBdd.add(MenuBdd_Quitter);
|
||||
|
||||
// Creation du menu Action
|
||||
MenuAction = new JMenu("Action");
|
||||
JMenuItem MenuAction_Requete = new JMenuItem("Faire une requete");
|
||||
MenuAction.add(MenuAction_Requete);
|
||||
MenuAction.setVisible(false);
|
||||
|
||||
// Creation du menu Aide
|
||||
JMenu MenuAide = new JMenu("Aide");
|
||||
JMenuItem MenuAide_Apropos = new JMenuItem("A propos");
|
||||
MenuAide.add(MenuAide_Apropos);
|
||||
|
||||
// Creation de la barre de menus
|
||||
JMenuBar MenuPrincipal = new JMenuBar();
|
||||
MenuPrincipal.add(MenuBdd);
|
||||
MenuPrincipal.add(MenuAction);
|
||||
MenuPrincipal.add(MenuAide);
|
||||
|
||||
//** Modification de la zone de texte
|
||||
|
||||
zoneTexteStatut = new JTextArea(6,60);
|
||||
zoneTexteStatut.setEditable(false);
|
||||
zoneTexteStatut.setBorder(new BevelBorder(BevelBorder.LOWERED));
|
||||
|
||||
//** Creation des panneaux **//
|
||||
// Panneau au centre
|
||||
Panneau_Centre = new JPanel();
|
||||
Panneau_Centre.setLayout(new BorderLayout());
|
||||
Panneau_Centre.setOpaque(true); // Apparemment utile pour le JTable
|
||||
Panneau_Centre.setBorder(BorderFactory.createTitledBorder("Resultat des requetes"));
|
||||
|
||||
// Panneau en bas
|
||||
JPanel Panneau_Bas = new JPanel();
|
||||
Panneau_Bas.setBorder(BorderFactory.createTitledBorder("Statut"));
|
||||
|
||||
// Ajout des boutons et zones de texte au panneau bas
|
||||
Panneau_Bas.add(zoneTexteStatut);
|
||||
|
||||
// Ajout des panneaux a la fenetre
|
||||
this.getContentPane().setLayout(new BorderLayout());
|
||||
this.add(Panneau_Centre, BorderLayout.CENTER);
|
||||
this.add(Panneau_Bas, BorderLayout.SOUTH);
|
||||
this.add(MenuPrincipal, BorderLayout.NORTH);
|
||||
|
||||
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
|
||||
this.setSize(700,300);
|
||||
this.setLocation(200,200);
|
||||
this.setResizable(false);
|
||||
this.setTitle("SQLNavigator v0.1");
|
||||
|
||||
|
||||
// ***************************************************** //
|
||||
// Creation des fenetres secondaires //
|
||||
// ***************************************************** //
|
||||
conn = new IHMConnexion(this, "grive.u-strasbg.fr", "1521", "v920", "dut", "dut");
|
||||
conn.setLocation(400,350);
|
||||
|
||||
// ***************************************************** //
|
||||
|
||||
// menu Jeu - bouton Nouveau
|
||||
MenuBdd_Connexion.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
menuBddConnexion();
|
||||
}
|
||||
});
|
||||
|
||||
MenuBdd_Fermer.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
menuBddFermer();
|
||||
}
|
||||
});
|
||||
|
||||
// menu Jeu - bouton Quitter
|
||||
MenuBdd_Quitter.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
menuBddQuitter();
|
||||
}
|
||||
});
|
||||
|
||||
MenuAction_Requete.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
menuActionRequete();
|
||||
}
|
||||
});
|
||||
|
||||
// menu Apropos - bouton
|
||||
MenuAide_Apropos.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
menuApropos();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void menuBddConnexion(){
|
||||
// Affichage de la fenetre de connexion
|
||||
conn.setVisible(true);
|
||||
conn.driverExist();
|
||||
|
||||
// Mise en place d'une ecoute sur la fenetre
|
||||
conn.addWindowListener(new WindowListener(){
|
||||
public void windowActivated(WindowEvent ev){
|
||||
|
||||
}
|
||||
public void windowClosed(WindowEvent ev){
|
||||
|
||||
}
|
||||
public void windowClosing(WindowEvent ev){
|
||||
conn.dispose();
|
||||
|
||||
}
|
||||
public void windowDeactivated(WindowEvent ev){
|
||||
|
||||
}
|
||||
public void windowDeiconified(WindowEvent ev){
|
||||
|
||||
}
|
||||
public void windowIconified(WindowEvent ev){
|
||||
|
||||
}
|
||||
public void windowOpened(WindowEvent ev){
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private void menuBddFermer(){
|
||||
String[] resultatFermeture;
|
||||
|
||||
resultatFermeture = new String[2];
|
||||
resultatFermeture = this.objetConnexion.disconnect();
|
||||
|
||||
if(Integer.parseInt(resultatFermeture[0]) == 0){
|
||||
this.MenuBdd_Fermer.setEnabled(false);
|
||||
this.MenuBdd_Connexion.setEnabled(true);
|
||||
this.zoneTexteStatut.setText("Base de donnees fermee: " + resultatFermeture[1]);
|
||||
this.MenuAction.setVisible(false);
|
||||
}
|
||||
else{
|
||||
this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]);
|
||||
}
|
||||
}
|
||||
|
||||
private void menuBddQuitter(){
|
||||
String[] resultatFermeture;
|
||||
|
||||
// On verifie si une connexion a une BDD est en cours
|
||||
// - Si oui, on ferme d'abord la connexion
|
||||
if(this.connecte){
|
||||
resultatFermeture = new String[2];
|
||||
resultatFermeture = this.objetConnexion.disconnect();
|
||||
|
||||
if(Integer.parseInt(resultatFermeture[0]) == 0){
|
||||
System.exit(0);
|
||||
}
|
||||
else{
|
||||
this.zoneTexteStatut.setText("Impossible de fermer la base de donnees : " + resultatFermeture[1]);
|
||||
}
|
||||
}
|
||||
// - Si non, alors on peut quitter de suite
|
||||
else{
|
||||
System.exit(0);
|
||||
}
|
||||
}
|
||||
|
||||
private void menuActionRequete(){
|
||||
IHMRequete ihmRequete = new IHMRequete(this);
|
||||
ihmRequete.setLocation(800, 400);
|
||||
ihmRequete.setVisible(true);
|
||||
}
|
||||
|
||||
/**
|
||||
* <p>Action du bouton Apropos du menu Aide</p>
|
||||
* @param args
|
||||
*/
|
||||
private void menuApropos(){
|
||||
JOptionPane.showMessageDialog(null, "SQLNavigator\n\n" +
|
||||
"Version 0.1\n" +
|
||||
"Developpe par Olivier DOSSMANN\n\n",
|
||||
"A propos de SQLNavigator",
|
||||
JOptionPane.QUESTION_MESSAGE);
|
||||
}
|
||||
|
||||
public void confirmationConnexion(Connexion objetConnexion){
|
||||
String[] resultatConnexion;
|
||||
|
||||
this.objetConnexion = objetConnexion;
|
||||
resultatConnexion = new String[2];
|
||||
resultatConnexion = this.objetConnexion.connect();
|
||||
|
||||
this.zoneTexteStatut.setText(resultatConnexion[1]);
|
||||
if(Integer.parseInt(resultatConnexion[0]) == 0){
|
||||
this.MenuBdd_Connexion.setEnabled(false);
|
||||
this.MenuBdd_Fermer.setEnabled(true);
|
||||
this.MenuAction.setVisible(true);
|
||||
this.MenuAction.setEnabled(true);
|
||||
this.connecte = true;
|
||||
this.repaint();
|
||||
}
|
||||
}
|
||||
|
||||
public void envoiRequete(String laRequete){
|
||||
if(Integer.parseInt(objetConnexion.sendQuery(laRequete)[0]) == 0){
|
||||
|
||||
// Tableau
|
||||
tableDonnees = new JTableModel(objetConnexion, laRequete);
|
||||
tableDonnees.setVisible(true);
|
||||
Panneau_Centre.add(tableDonnees, BorderLayout.CENTER);
|
||||
Panneau_Centre.validate();
|
||||
}
|
||||
else {
|
||||
this.zoneTexteStatut.setText("L'envoi de la requete a echoue.");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$1.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$1.class
Normal file
Binary file not shown.
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$2.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete$2.class
Normal file
Binary file not shown.
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.class
Normal file
BIN
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.class
Normal file
Binary file not shown.
92
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.java
Normal file
92
workspace/RequeteSimple/fr/blankoworld/ihm/IHMRequete.java
Normal file
@ -0,0 +1,92 @@
|
||||
package fr.blankoworld.ihm;
|
||||
|
||||
import java.awt.BorderLayout;
|
||||
import java.awt.Dimension;
|
||||
import java.awt.Insets;
|
||||
import java.awt.event.ActionEvent;
|
||||
import java.awt.event.ActionListener;
|
||||
|
||||
import javax.swing.JButton;
|
||||
import javax.swing.JFrame;
|
||||
import javax.swing.JLabel;
|
||||
import javax.swing.JPanel;
|
||||
import javax.swing.JScrollPane;
|
||||
import javax.swing.JTextPane;
|
||||
|
||||
|
||||
public class IHMRequete extends JFrame {
|
||||
// Requis par la classe JFrame (ne pas demander pourquoi)
|
||||
private static final long serialVersionUID = 1L;
|
||||
|
||||
// Creation de la zone de texte
|
||||
private JTextPane panneauTexte;
|
||||
|
||||
private IHMPrincipale pr;
|
||||
|
||||
public IHMRequete(IHMPrincipale pr){
|
||||
|
||||
this.pr = pr;
|
||||
// Creation d'une etiquette
|
||||
JLabel jRequete = new JLabel("Entrez votre requete : ");
|
||||
|
||||
// Creation des boutons
|
||||
JButton jOk = new JButton("Ok");
|
||||
JButton jAnnuler = new JButton("Quitter");
|
||||
|
||||
// Creation de la zone de texte
|
||||
panneauTexte = new JTextPane();
|
||||
panneauTexte.setCaretPosition(0);
|
||||
panneauTexte.setMargin(new Insets(5,5,5,5));
|
||||
JScrollPane zoneTexteRequete = new JScrollPane(panneauTexte);
|
||||
zoneTexteRequete.setPreferredSize(new Dimension(200, 130));
|
||||
|
||||
// Creation des panneaux bas et centre
|
||||
JPanel Panneau_Bas = new JPanel();
|
||||
JPanel Panneau_Centre = new JPanel();
|
||||
Panneau_Centre.setLayout(new BorderLayout());
|
||||
|
||||
// Ajout des boutons a chacun des panneaux
|
||||
Panneau_Centre.add(jRequete, BorderLayout.NORTH);
|
||||
Panneau_Centre.add(zoneTexteRequete, BorderLayout.CENTER);
|
||||
|
||||
Panneau_Bas.add(jOk);
|
||||
Panneau_Bas.add(jAnnuler);
|
||||
|
||||
// Gestionnaire de contenus
|
||||
this.getContentPane().setLayout(new BorderLayout());
|
||||
this.add(Panneau_Centre, BorderLayout.CENTER);
|
||||
this.add(Panneau_Bas, BorderLayout.SOUTH);
|
||||
|
||||
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||
|
||||
this.setSize(400,200);
|
||||
this.setLocation(200,200);
|
||||
this.setResizable(false);
|
||||
this.setTitle("Requete");
|
||||
|
||||
// ******************************** //
|
||||
// Mise en place des <20>couteurs //
|
||||
// ******************************** //
|
||||
|
||||
jOk.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
valider();
|
||||
}
|
||||
});
|
||||
|
||||
jAnnuler.addActionListener(new ActionListener(){
|
||||
public void actionPerformed(ActionEvent ev){
|
||||
annuler();
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
private void valider(){
|
||||
this.pr.envoiRequete(this.panneauTexte.getText());
|
||||
}
|
||||
|
||||
private void annuler(){
|
||||
dispose();
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user