SetLocationRelativeTo

Résolu
CHKDSK2K Messages postés 144 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 18 septembre 2007 - 17 sept. 2007 à 14:08
CHKDSK2K Messages postés 144 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 18 septembre 2007 - 18 sept. 2007 à 06:52
Bonjour à tous voilà j'ai un probleme avec le "setLocationRelativeTo"

Je suis débutant en java donc désolé si mon code est un peu voir beaucoup cochon ;-)

Le probleme c'est que le JDialog que j'ai créé ne se place pas au milieu de la JFrame de depart ..

Voilà le code pour le JDialog

package Hotel.SN2008.Fenetre.Achat;

import javax.swing.*;

import Hotel.SN2008.Fenetre.Principale.*;

public class input extends JDialog {
   
    public input (Principale xxx) {
       
        super(xxx, "Fenetre ", true);   
       
        JOptionPane     panneauDialogue;
        JLabel            Titre = new JLabel();
       
          Object[] lesObjets = {"Indiquez un texte", "puis faites un choix",
                    "regardez le message de la fenetre principale",
                    Titre};
          Object[] choix = {"petit", "grand", "aucun"};
          panneauDialogue = new JOptionPane(lesObjets,
                                JOptionPane.INFORMATION_MESSAGE,
                                JOptionPane.OK_CANCEL_OPTION,
                        null, choix);
         
          setContentPane(panneauDialogue);
       
          this.setSize(250, 180);
          this.setResizable(false);
          this.setLocationRelativeTo(xxx);
          this.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
       
    }
}

Voila le code pour la JFrame (J'ai juste placé le code pour l'action sur le bouton ...

package Hotel.SN2008.Fenetre.Principale;

import Hotel.SN2008.Fenetre.Fond.*;
import Hotel.SN2008.Ressources.*;
import Hotel.SN2008.Fenetre.Achat.*;

import java.awt.event.*;
import javax.swing.*;

import java.awt.*;
import java.util.*;

public class Principale extends JFrame
{
     input inPut ;
     JButton teste         = new JButton("Teste");
     ....

    public Principale(String title)
    {
      ....
            teste.addActionListener(new ActionListener()
        {

            public void actionPerformed(ActionEvent e)
            {
                inPut = new input(null);
                inPut.setVisible(true);
            }
        });

   ....

DOS-chkdsk-2K

3 réponses

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
17 sept. 2007 à 23:56
Salut,
normal tu fais "inPut new input( null );" et faudrai " inPut new input(Principale.this);"

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

OoWORAoO
3
CHKDSK2K Messages postés 144 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 18 septembre 2007
18 sept. 2007 à 06:49
Bonjour Twinuts

Si je fais cela il y a Eclips (1.3)

qui me dit Principale ne peut être résolu ou n'est pas un champs.

et quand je fais créer un champ il me donne ca

            private Dialog Principale;

            public void actionPerformed(ActionEvent e)
            {
                inPut = new input(this.Principale);
                inPut.setVisible(true);
            }

mais alors il me donne comme erreur

il me dit que que le constructeur input(Jdialog)n'est psa défnit quand je laisse eclipse le défnir et que je place tout de dans il me donne la même

elle n'est toujours pas au centre ..

donc dans le fichier java c'est input.java
    public input(Dialog principale) {
        // TODO Raccord de constructeur auto-généré

        super(principale, "Fenetre ", true);
          this.setResizable(false);
          this.setLocationRelativeTo(principale);

....

et dans Principale.java

        teste.addActionListener(new ActionListener()
        {

            private Dialog Principale;

            public void actionPerformed(ActionEvent e)
            {
                inPut = new input(this.Principale);
                inPut.setVisible(true);
               
               
            }
        });

DOS-chkdsk-2K
0
CHKDSK2K Messages postés 144 Date d'inscription mardi 2 septembre 2003 Statut Membre Dernière intervention 18 septembre 2007
18 sept. 2007 à 06:52
Sorry j'avais pas vu que tu as placé Principale.this et j'ai tapé this.Principale.

Ca fonctionne tres bien là ..

un tout grand Merci à toi Twinuts

DOS-chkdsk-2K
0
Rejoignez-nous