Problème pour fermer une page
frederic
-
mora092 -
mora092 -
Bonjour.
J'ai un big problème, j'utilise le script ci dessous pour ouvrir ma page en plein écran.
<HTML>
<HEAD>
<script language="JavaScript">
<!-- Begin
if(this.name!='fullscreen'){
window.open(location.href,'fullscreen','fullscreen,scrollbars')
}
//end --></script>
</HEAD>
jusque là ça marche, seulement la page d'origine reste toujours active derrière.
Comment faire pour faire refermer la page d'origine?
De même ce script ouvre nien en théorie une page plein ècran mais je n'arrive pas à désactiver la barre du menu demmarer qui elle aussi reste presente en arriere plan.
J'espère que quelqu'un pourra m'envoyer la solution car je ne connais pas grand chose pour ne pas dire rien de tout en java.
Merci a tous ceux qui pourront m'aider.
Frédéric
J'ai un big problème, j'utilise le script ci dessous pour ouvrir ma page en plein écran.
<HTML>
<HEAD>
<script language="JavaScript">
<!-- Begin
if(this.name!='fullscreen'){
window.open(location.href,'fullscreen','fullscreen,scrollbars')
}
//end --></script>
</HEAD>
jusque là ça marche, seulement la page d'origine reste toujours active derrière.
Comment faire pour faire refermer la page d'origine?
De même ce script ouvre nien en théorie une page plein ècran mais je n'arrive pas à désactiver la barre du menu demmarer qui elle aussi reste presente en arriere plan.
J'espère que quelqu'un pourra m'envoyer la solution car je ne connais pas grand chose pour ne pas dire rien de tout en java.
Merci a tous ceux qui pourront m'aider.
Frédéric
A voir également:
- Problème pour fermer une page
- Supprimer une page word - Guide
- Imprimer tableau excel sur une page - Guide
- Comment traduire une page internet - Guide
- Créer une page facebook - Guide
- Fermer compte paypal - Guide
15 réponses
Le code suivant fonctionne chez moi:
Pour la barre de menu démarrer, c'est certainement qu'elle est configurée pour rester toujours au premier plan (Start - Settings - Taskbar & StartMenu - Désactivr l'option "Always on top")
<script language="JavaScript" type="text/javascript">
if(this.name!='fullscreen'){
w = window.open(location.href,'fullscreen','fullscreen,scrollbars');
w.focus();
w.parent.close();
}
</script>
Pour la barre de menu démarrer, c'est certainement qu'elle est configurée pour rester toujours au premier plan (Start - Settings - Taskbar & StartMenu - Désactivr l'option "Always on top")
Salut à tous!
J'ai moi même un petit problème à résoudre. J'aimerais que dans ma fenêtre soit retirée la barre d'état (car elle cache une partie de l'image que j'ai mis dans ma fenêtre), mais la fonction 'toolbar=no' ne fonctionne pas.
De plus, j'aimerais créer une "textbox" ayant comme fond la couleur de fond de ma fenêtre et sans bord (en gros, j'aimerais qu'elle soit transparente).
Quelqu'un aurait-il une solution ?
Merci par avance,
Mickaël
J'ai moi même un petit problème à résoudre. J'aimerais que dans ma fenêtre soit retirée la barre d'état (car elle cache une partie de l'image que j'ai mis dans ma fenêtre), mais la fonction 'toolbar=no' ne fonctionne pas.
De plus, j'aimerais créer une "textbox" ayant comme fond la couleur de fond de ma fenêtre et sans bord (en gros, j'aimerais qu'elle soit transparente).
Quelqu'un aurait-il une solution ?
Merci par avance,
Mickaël
<html>
<head>
<title>ISans toolbar et avec textbox transparente</title>
<style>
body{
background-color: #8888ff;
}
#in_text{
background-color: #8888ff;
border-style: none;
border-width: 0px;
}
</style>
<script language="javascript" type="text/javascript">
w = window.open('','','toolbar=no, status=no, scrollbar=no');
</script>
</head>
<body>
Test: <input id="in_text" type="text" />
</body>
</html>
;-)
HackTrack
Merci pour le script mais il ne semble pas marcher.
La fenêtre plein ècran s'ouvre et se referme aussitôt or le but c'est d'avoir la fenêtre plein ècran et de faire disparaitre la page d'origine.
Peux tu s'il te plait regarder ça et me rèpondre vu que tu as l'ai re t'y connaitre?
Merci d'avance et j'espère que tu pourras me donner la solution car quand on y connait rien c'est la galère.
Merci
Frederic
La fenêtre plein ècran s'ouvre et se referme aussitôt or le but c'est d'avoir la fenêtre plein ècran et de faire disparaitre la page d'origine.
Peux tu s'il te plait regarder ça et me rèpondre vu que tu as l'ai re t'y connaitre?
Merci d'avance et j'espère que tu pourras me donner la solution car quand on y connait rien c'est la galère.
Merci
Frederic
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bizarre, bizarre... chez moi cela fonctionne sans problème.
Je travaille avec IE 5.5, et toi?
Je travaille avec IE 5.5, et toi?
bonjour.
tu n'as pas rèpondu à ma dernière demande, le script que tu m'as donnè ouvre la fenetre plein ecran et referme le plein ècran au lieu de femer la page d'origine.
Tu ne vois pas pourquoi? je l'ai testy sur d'autre machine idem....
A ton avis comment faire pour propteger mon site, j'aimerais ègalement pouvoir bloquer les aspirateurs ce qui es t faisable aussi mais comment.
Toute suggestions seront les bienvenues car j'y connais pas trop grand chose ALORS HELP!!!!
Merci d'avance car là je suis bloquè avec ce problème de protection.
Merci et bonne journée à toout le monde
tu n'as pas rèpondu à ma dernière demande, le script que tu m'as donnè ouvre la fenetre plein ecran et referme le plein ècran au lieu de femer la page d'origine.
Tu ne vois pas pourquoi? je l'ai testy sur d'autre machine idem....
A ton avis comment faire pour propteger mon site, j'aimerais ègalement pouvoir bloquer les aspirateurs ce qui es t faisable aussi mais comment.
Toute suggestions seront les bienvenues car j'y connais pas trop grand chose ALORS HELP!!!!
Merci d'avance car là je suis bloquè avec ce problème de protection.
Merci et bonne journée à toout le monde
moi j'ai xp donc IE 6 sur une machine et millenium sur l'autre, donc IE 5.5.
Au lancement la page plein ècran à l'air de s'ouvrir mais laisse aussiôt la place à la page d'origine.
Je n'ai peut être pas placè le script dans les bonnes balises.
Voilà comment je l'ai insérè.
<html>
<head>
<script language="JavaScript" type="text/javascript">
if(this.name!='fullscreen'){
w = window.open(location.href,'fullscreen','fullscreen,scrollbars');
w.focus();
w.parent.close();
}
</script>
</head>
D'une manière thèorique il ne devrait pas y avoir de problème!
j'espère que tu pourras m'aider car je ne vois pas du tout comment il faut faire, en plus je devrais bientôt ouvrir mon site or la protection est très loin d'être prête.
Ok je te dis a bientôt en espèrant que tu puisse m'aider.
Merci d'avance
Frederic
Au lancement la page plein ècran à l'air de s'ouvrir mais laisse aussiôt la place à la page d'origine.
Je n'ai peut être pas placè le script dans les bonnes balises.
Voilà comment je l'ai insérè.
<html>
<head>
<script language="JavaScript" type="text/javascript">
if(this.name!='fullscreen'){
w = window.open(location.href,'fullscreen','fullscreen,scrollbars');
w.focus();
w.parent.close();
}
</script>
</head>
D'une manière thèorique il ne devrait pas y avoir de problème!
j'espère que tu pourras m'aider car je ne vois pas du tout comment il faut faire, en plus je devrais bientôt ouvrir mon site or la protection est très loin d'être prête.
Ok je te dis a bientôt en espèrant que tu puisse m'aider.
Merci d'avance
Frederic
Salut les amis!
Et bien en fait, à chaque fois que je lis vos messages, ne prenez pas ça mal, mais vous ne répondez pas tout à fait à ma question initiale.
En fait, ce que je voudrais, c'est que la toute première fenêtre qui s'ouvre soit sans barre d'état. Ce que vous me décrivez depuis le début, c'est une fenêtre qui s'ouvre sans barre d'état, mais à partir d'une première fenêtre déjà ouverte...
Vous suivez ?
Alors, quelqu'un a une idée géniale ?
Merci par avance,
Mickaël
Et bien en fait, à chaque fois que je lis vos messages, ne prenez pas ça mal, mais vous ne répondez pas tout à fait à ma question initiale.
En fait, ce que je voudrais, c'est que la toute première fenêtre qui s'ouvre soit sans barre d'état. Ce que vous me décrivez depuis le début, c'est une fenêtre qui s'ouvre sans barre d'état, mais à partir d'une première fenêtre déjà ouverte...
Vous suivez ?
Alors, quelqu'un a une idée géniale ?
Merci par avance,
Mickaël
Il faut utiliser la méthode "parent" pour réussir à fermer la fenêtre qui a permis d'ouvrir ta nouvelle fenêtre.
Donc, tu écris tout simplement, dans le script de ta nouvelle fenêtre (Celle que tu viens d'ouvrir):
window.opener.close()
Ca te va maintenant ? ;)
Mickaël
Donc, tu écris tout simplement, dans le script de ta nouvelle fenêtre (Celle que tu viens d'ouvrir):
window.opener.close()
Ca te va maintenant ? ;)
Mickaël
bonjour a tt le monde
en fait jai un problem ds la fermeture de ma fenetre jarrive pas a la fermer des le premier click je dois clicker deux fois
voila le code ke jai utilise
if(x.equals("Close")){
// fermetutre
win.setStatus("List of Items in the dictionnary");// win c la page principal et entre " " c la page ou je veux la fermer
this.dispose();
}
merci davance
en fait jai un problem ds la fermeture de ma fenetre jarrive pas a la fermer des le premier click je dois clicker deux fois
voila le code ke jai utilise
if(x.equals("Close")){
// fermetutre
win.setStatus("List of Items in the dictionnary");// win c la page principal et entre " " c la page ou je veux la fermer
this.dispose();
}
merci davance
bonjour tout le monde
moi j'ai un problème similaire avec la page firefox,,mais juste une moitie de page avec le lien google,le dessus de cette page
je ne l'ai plus car je ne peux la descendre ou la remontée,et cette page reste comme fond d'écran
comment procéder SVP
moi j'ai un problème similaire avec la page firefox,,mais juste une moitie de page avec le lien google,le dessus de cette page
je ne l'ai plus car je ne peux la descendre ou la remontée,et cette page reste comme fond d'écran
comment procéder SVP
jai un problem jarrive pa a fermer ma page en cliquant une seule fois
masi il faut clicker 2fois pr kil se ferme
je vous demande de maider a regler ce blem merci davance
voila le code
if(x.equals("Close")){
// fermetutre
win.setStatus("List of Items in the dictionnary");
// avec win le nom de la page principale et entre " " la page ke je veux la fermer
this.dispose();
}
masi il faut clicker 2fois pr kil se ferme
je vous demande de maider a regler ce blem merci davance
voila le code
if(x.equals("Close")){
// fermetutre
win.setStatus("List of Items in the dictionnary");
// avec win le nom de la page principale et entre " " la page ke je veux la fermer
this.dispose();
}
voila tt le code de ma page
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;
import java.util.Vector;
//import javax.swing.BoxLayout;
//import java.util.Random;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
public class Dico extends JInternalFrame implements ActionListener{
private static final long serialVersionUID = 1L;
static final int PER_PAGE = 50;
private String sBase;
private MTA win;
private JTable tab_List;
private JScrollPane js_Center;
private JPanel jp;
private JComboBox jcb_tri, jcb_tables;
private JLabel pages_Status;
private JButton jb_previous, jb_next;
private int current_page;
private JTextField jtf;
private String[] fieldName;
//Constructeur
Dico(MTA m,String base){
win=m;
sBase=base;
//construction de l'interface
jp=new JPanel(new BorderLayout());
jp.setPreferredSize(new Dimension(900,600));
JPanel jp1=new JPanel(new BorderLayout());
JButton jb=new JButton("Close");
jb.setName("Close");
jb.addActionListener(this);
jp1.add(jb,BorderLayout.EAST);
JPanel jp2=new JPanel();
BoxLayout bhor = new BoxLayout(jp2,BoxLayout.X_AXIS);
jp2.setLayout(bhor);
jb_previous=new JButton("Previous");
jb_previous.setName("Previous");
jb_previous.addActionListener(this);
jp2.add(jb_previous);
jp2.add(Box.createHorizontalStrut(15));
jtf = new JTextField(2);
jp2.add(jtf);
jp2.add(Box.createHorizontalStrut(5));
JButton jb_go = new JButton("Go");
jb_go.setName("Go");
jb_go.addActionListener(this);
jp2.add(jb_go);
jp2.add(Box.createHorizontalStrut(15));
jb_next=new JButton("Next");
jb_next.setName("Next");
jb_next.addActionListener(this);
jp2.add(jb_next);
jp1.add(jp2, BorderLayout.WEST);
pages_Status = new JLabel("", JLabel.CENTER);
jp1.add(pages_Status, BorderLayout.CENTER);
jp.add(jp1,BorderLayout.SOUTH);
jp1 = new JPanel(new BorderLayout());
jp2 = new JPanel();
bhor = new BoxLayout(jp2,BoxLayout.X_AXIS);
jp2.setLayout(bhor);
jcb_tables = new JComboBox();
jcb_tables.setName("tables");
jcb_tri = new JComboBox();
jcb_tri.setName("tri");
//jcb_tri.addActionListener(this);
//jcb_tri.addItemListener(this);
jp2.add(new JLabel("Table:"));
jp2.add(Box.createHorizontalStrut(15));
jp2.add(jcb_tables);
jp2.add(Box.createHorizontalStrut(15));
jp2.add(new JLabel("Order by:"));
jp2.add(Box.createHorizontalStrut(15));
jp2.add(jcb_tri);
jp1.add(jp2,BorderLayout.WEST);
jp.add(jp1, BorderLayout.NORTH);
//initialisation de la table, tri par item_code
initTable(sBase,"detail",0,PER_PAGE,"item_code");
//jcb_tri.addItemListener(this);
//ajout de la liste des tables
MysqlAccess my=new MysqlAccess("mta_dico");
my.startConnection();
int rst = my.executeQuery("SELECT DISTINCT table_name from headers;");
while(my.goNextRst(rst)){
jcb_tables.addItem(my.getValueRst(rst,"table_name"));
}
rst =my.executeQuery("DESCRIBE ta_" + (String)jcb_tables.getSelectedItem());
while(my.goNextRst(rst))
{
jcb_tri.addItem(my.getValueRst(rst,"field"));
}
my.closeConnection();
//ajout du listener apres la création de la liste
jcb_tri.addActionListener(this);
jcb_tables.addActionListener(this);
current_page=1;
this.getContentPane().add(jp);
//parametre de la fenetre
//this.closable=false;
this.iconable=true;
this.maximizable=true;
this.resizable=true;
this.setTitle("List of Items in the dictionnary");
this.pack();
this.setVisible(true);
Tools.centerInterFrame(this,win);
}
//Génération de la table
private void initTable(String base, String table, int lim_basse, int nb_records, String order){
String s;
int nb_lines, nb_pages;
//connection à la base de donnée
JDBCAdapter data=new JDBCAdapter(
"com.mysql.jdbc.Driver",
"jdbc:mysql://localhost/"+base,
"root",
"");
tab_List=new JTable();
//on recupere le nombre de lignes et le nombre de pages
nb_lines = getNbLines(base,"ta_"+table);
nb_pages = nb_lines/PER_PAGE+1;
pages_Status.setText("Page "+(lim_basse/PER_PAGE+1)+" of "+String.valueOf(nb_pages));
jtf.setText(String.valueOf(lim_basse/PER_PAGE+1));
s="SELECT * FROM ta_" + table +" ORDER BY " + order + " LIMIT " + lim_basse + "," +nb_records;
data.executeQuery(s);
//on recupere le nom des champs de la table selectionner
MysqlAccess my = new MysqlAccess(base);
my.startConnection();
s = "SELECT name FROM headers WHERE table_name='" + table + "' ORDER BY position";
int rst = my.executeQuery(s);
String[] chmp = new String[my.getResultCount(rst)];
int i=0;
while(my.goNextRst(rst))
{
chmp[i] = my.getValueRst(rst,"name");
i++;
}
my.closeConnection();
//on défini le noms des colonnes
data.setColumnNames(chmp);
data.fireTableStructureChanged();
//on insere les données dans notre tableau
tab_List.setModel(data);
//empeche de pouvoir réorganiser les colonnes
tab_List.getTableHeader().setReorderingAllowed(false);
js_Center=new JScrollPane(tab_List);
jp.add(js_Center,BorderLayout.CENTER);
js_Center.setPreferredSize(new Dimension(300,200));
jb_previous.setEnabled(true);
jb_next.setEnabled(true);
if(lim_basse==0)
jb_previous.setEnabled(false);
if((lim_basse+PER_PAGE)>nb_lines)
jb_next.setEnabled(false);
}
//fonction permettant de retourner le nombre de ligne d'une table d'une base
private int getNbLines(String base, String table)
{
String s;
int rst,nblines;
MysqlAccess my=new MysqlAccess(base);
my.startConnection();
s="SELECT COUNT(*) AS nb_lines FROM "+table;
rst = my.executeQuery(s);
my.goNextRst(rst);
nblines = Integer.valueOf(my.getValueRst(rst,"nb_lines"));
my.closeConnection();
return(nblines);
}
public void actionPerformed (ActionEvent evt){
String s;
s=evt.getSource().getClass().toString();
//détection de la selection d'un critere de tri ou d'une table à afficher
if(s.equals("class javax.swing.JComboBox"))
{
JComboBox cb = (JComboBox)evt.getSource();
String x = cb.getName();
if(x.equals("tri"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),0,PER_PAGE,(String)jcb_tri.getSelectedItem());
this.validate();
}
if(x.equals("tables"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
jcb_tri.removeActionListener(this);
jcb_tri.removeAllItems();
MysqlAccess my=new MysqlAccess("mta_dico");
my.startConnection();
int rst =my.executeQuery("DESCRIBE ta_" + (String)jcb_tables.getSelectedItem());
while(my.goNextRst(rst))
{
jcb_tri.addItem(my.getValueRst(rst,"field"));
}
jcb_tri.addActionListener(this);
initTable(sBase,(String)jcb_tables.getSelectedItem(),0,PER_PAGE,(String)jcb_tri.getSelectedItem());
this.validate();
}
}
//détection des actions sur les boutons
if (s.equals("class javax.swing.JButton")){
JButton c = (JButton)evt.getSource();
String x = c.getName();
if(x.equals("Close")){
// fermetutre
//this.closable=true;
//win.setStatus("List of Items in the dictionnary").close();
//this.dispose();
win.setStatus("List of Items in the dictionnary");
this.setVisible(false);
// win.closeMTA();
}
if(x.equals("Next"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*current_page,PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page++;
this.validate();
}
if(x.equals("Previous"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*(current_page-2),PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page--;
this.validate();
}
if(x.equals("Go"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*(Integer.valueOf(jtf.getText())-1),PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page = Integer.valueOf(jtf.getText());
this.validate();
}
}
}
}
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
import javax.swing.tree.DefaultMutableTreeNode;
import java.util.Vector;
//import javax.swing.BoxLayout;
//import java.util.Random;
//import java.awt.event.ActionEvent;
//import java.awt.event.ActionListener;
public class Dico extends JInternalFrame implements ActionListener{
private static final long serialVersionUID = 1L;
static final int PER_PAGE = 50;
private String sBase;
private MTA win;
private JTable tab_List;
private JScrollPane js_Center;
private JPanel jp;
private JComboBox jcb_tri, jcb_tables;
private JLabel pages_Status;
private JButton jb_previous, jb_next;
private int current_page;
private JTextField jtf;
private String[] fieldName;
//Constructeur
Dico(MTA m,String base){
win=m;
sBase=base;
//construction de l'interface
jp=new JPanel(new BorderLayout());
jp.setPreferredSize(new Dimension(900,600));
JPanel jp1=new JPanel(new BorderLayout());
JButton jb=new JButton("Close");
jb.setName("Close");
jb.addActionListener(this);
jp1.add(jb,BorderLayout.EAST);
JPanel jp2=new JPanel();
BoxLayout bhor = new BoxLayout(jp2,BoxLayout.X_AXIS);
jp2.setLayout(bhor);
jb_previous=new JButton("Previous");
jb_previous.setName("Previous");
jb_previous.addActionListener(this);
jp2.add(jb_previous);
jp2.add(Box.createHorizontalStrut(15));
jtf = new JTextField(2);
jp2.add(jtf);
jp2.add(Box.createHorizontalStrut(5));
JButton jb_go = new JButton("Go");
jb_go.setName("Go");
jb_go.addActionListener(this);
jp2.add(jb_go);
jp2.add(Box.createHorizontalStrut(15));
jb_next=new JButton("Next");
jb_next.setName("Next");
jb_next.addActionListener(this);
jp2.add(jb_next);
jp1.add(jp2, BorderLayout.WEST);
pages_Status = new JLabel("", JLabel.CENTER);
jp1.add(pages_Status, BorderLayout.CENTER);
jp.add(jp1,BorderLayout.SOUTH);
jp1 = new JPanel(new BorderLayout());
jp2 = new JPanel();
bhor = new BoxLayout(jp2,BoxLayout.X_AXIS);
jp2.setLayout(bhor);
jcb_tables = new JComboBox();
jcb_tables.setName("tables");
jcb_tri = new JComboBox();
jcb_tri.setName("tri");
//jcb_tri.addActionListener(this);
//jcb_tri.addItemListener(this);
jp2.add(new JLabel("Table:"));
jp2.add(Box.createHorizontalStrut(15));
jp2.add(jcb_tables);
jp2.add(Box.createHorizontalStrut(15));
jp2.add(new JLabel("Order by:"));
jp2.add(Box.createHorizontalStrut(15));
jp2.add(jcb_tri);
jp1.add(jp2,BorderLayout.WEST);
jp.add(jp1, BorderLayout.NORTH);
//initialisation de la table, tri par item_code
initTable(sBase,"detail",0,PER_PAGE,"item_code");
//jcb_tri.addItemListener(this);
//ajout de la liste des tables
MysqlAccess my=new MysqlAccess("mta_dico");
my.startConnection();
int rst = my.executeQuery("SELECT DISTINCT table_name from headers;");
while(my.goNextRst(rst)){
jcb_tables.addItem(my.getValueRst(rst,"table_name"));
}
rst =my.executeQuery("DESCRIBE ta_" + (String)jcb_tables.getSelectedItem());
while(my.goNextRst(rst))
{
jcb_tri.addItem(my.getValueRst(rst,"field"));
}
my.closeConnection();
//ajout du listener apres la création de la liste
jcb_tri.addActionListener(this);
jcb_tables.addActionListener(this);
current_page=1;
this.getContentPane().add(jp);
//parametre de la fenetre
//this.closable=false;
this.iconable=true;
this.maximizable=true;
this.resizable=true;
this.setTitle("List of Items in the dictionnary");
this.pack();
this.setVisible(true);
Tools.centerInterFrame(this,win);
}
//Génération de la table
private void initTable(String base, String table, int lim_basse, int nb_records, String order){
String s;
int nb_lines, nb_pages;
//connection à la base de donnée
JDBCAdapter data=new JDBCAdapter(
"com.mysql.jdbc.Driver",
"jdbc:mysql://localhost/"+base,
"root",
"");
tab_List=new JTable();
//on recupere le nombre de lignes et le nombre de pages
nb_lines = getNbLines(base,"ta_"+table);
nb_pages = nb_lines/PER_PAGE+1;
pages_Status.setText("Page "+(lim_basse/PER_PAGE+1)+" of "+String.valueOf(nb_pages));
jtf.setText(String.valueOf(lim_basse/PER_PAGE+1));
s="SELECT * FROM ta_" + table +" ORDER BY " + order + " LIMIT " + lim_basse + "," +nb_records;
data.executeQuery(s);
//on recupere le nom des champs de la table selectionner
MysqlAccess my = new MysqlAccess(base);
my.startConnection();
s = "SELECT name FROM headers WHERE table_name='" + table + "' ORDER BY position";
int rst = my.executeQuery(s);
String[] chmp = new String[my.getResultCount(rst)];
int i=0;
while(my.goNextRst(rst))
{
chmp[i] = my.getValueRst(rst,"name");
i++;
}
my.closeConnection();
//on défini le noms des colonnes
data.setColumnNames(chmp);
data.fireTableStructureChanged();
//on insere les données dans notre tableau
tab_List.setModel(data);
//empeche de pouvoir réorganiser les colonnes
tab_List.getTableHeader().setReorderingAllowed(false);
js_Center=new JScrollPane(tab_List);
jp.add(js_Center,BorderLayout.CENTER);
js_Center.setPreferredSize(new Dimension(300,200));
jb_previous.setEnabled(true);
jb_next.setEnabled(true);
if(lim_basse==0)
jb_previous.setEnabled(false);
if((lim_basse+PER_PAGE)>nb_lines)
jb_next.setEnabled(false);
}
//fonction permettant de retourner le nombre de ligne d'une table d'une base
private int getNbLines(String base, String table)
{
String s;
int rst,nblines;
MysqlAccess my=new MysqlAccess(base);
my.startConnection();
s="SELECT COUNT(*) AS nb_lines FROM "+table;
rst = my.executeQuery(s);
my.goNextRst(rst);
nblines = Integer.valueOf(my.getValueRst(rst,"nb_lines"));
my.closeConnection();
return(nblines);
}
public void actionPerformed (ActionEvent evt){
String s;
s=evt.getSource().getClass().toString();
//détection de la selection d'un critere de tri ou d'une table à afficher
if(s.equals("class javax.swing.JComboBox"))
{
JComboBox cb = (JComboBox)evt.getSource();
String x = cb.getName();
if(x.equals("tri"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),0,PER_PAGE,(String)jcb_tri.getSelectedItem());
this.validate();
}
if(x.equals("tables"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
jcb_tri.removeActionListener(this);
jcb_tri.removeAllItems();
MysqlAccess my=new MysqlAccess("mta_dico");
my.startConnection();
int rst =my.executeQuery("DESCRIBE ta_" + (String)jcb_tables.getSelectedItem());
while(my.goNextRst(rst))
{
jcb_tri.addItem(my.getValueRst(rst,"field"));
}
jcb_tri.addActionListener(this);
initTable(sBase,(String)jcb_tables.getSelectedItem(),0,PER_PAGE,(String)jcb_tri.getSelectedItem());
this.validate();
}
}
//détection des actions sur les boutons
if (s.equals("class javax.swing.JButton")){
JButton c = (JButton)evt.getSource();
String x = c.getName();
if(x.equals("Close")){
// fermetutre
//this.closable=true;
//win.setStatus("List of Items in the dictionnary").close();
//this.dispose();
win.setStatus("List of Items in the dictionnary");
this.setVisible(false);
// win.closeMTA();
}
if(x.equals("Next"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*current_page,PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page++;
this.validate();
}
if(x.equals("Previous"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*(current_page-2),PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page--;
this.validate();
}
if(x.equals("Go"))
{
js_Center.remove(tab_List);
tab_List=null;
jp.remove(js_Center);
js_Center=null;
initTable(sBase,(String)jcb_tables.getSelectedItem(),PER_PAGE*(Integer.valueOf(jtf.getText())-1),PER_PAGE,(String)jcb_tri.getSelectedItem());
current_page = Integer.valueOf(jtf.getText());
this.validate();
}
}
}
}