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

Agents de placement/Fenêtres Java Discussion :

[JDialog] Modification dans une fenêtre [FAQ]


Sujet :

Agents de placement/Fenêtres Java

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2003
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 34
    Points : 20
    Points
    20
    Par défaut [JDialog] Modification dans une fenêtre
    Bonjour,
    après maintes recherche, je n'ai trouvé aucune explication et aucun exemple claire pour ma question suivante:

    depuis mon applet je clique sur un bouton qui doit m'ouvrir une fenêtre modale contenant plusieurs composants(JButton, JTextField, JComboBox...) afin de modifier ma base de données suite au bouton ok.

    Et donc voici ma question comment construire une telle fenêtre ???

    Merci

  2. #2
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Et ben t'es pas sorti de l'auberge... Bonjour la création de fenêtres modales dans une applet.
    En gros, le fonctionnement dépend de l'explorateur, comme le dit le lien suivant dans la FAQ :
    http://faqjava.developpez.com/?page=applet#APPLET_Frame

    Seulement vilà, ce qui est décrit dans ce lien ne marche pas pour rendre une fenêtre modale dans IE (j'ai testé en long, en large et en travers et c'est... l'échec ).

    Mais c'est ton jour de chance !!!
    Il y a une solution de contournement qui, en tout cas, fonctionne parfaitement sous IE 6 et l'appletViewer (je n'ai pas testé pour netscape), pour afficher une JDialog en modal (ce qui requiert une JFrame).

    Elle consiste à créer une JFrame factice (ou une frame factice), à ne pas l'afficher et à attacher la JDialog à cette frame (ce qui, au passage, la centre forcément). Ca marche, la boite de dialogue est modal, ce que je n'avais jamais réussi à obtenir sous IE avec différentes méthodes. Voilà le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    JFrame dummyFrame = new JFrame(); 
    JDialog dial = new JDialog(dummyFrame, "titre", true); 
    dial.setLocationRelativeTo(dummyFrame);
    C'est le setLocationRelativeTo() qui, appliqué à un composant non affiché, centre la JDialog. Ca doit marcher aussi avec de l'AWT... (pas testé).

    Ensuite, tu mets les panels que tu veux dans ta fenêtre de dialogue, tu lui mes les fonctions que tu veux... Tout comme une vraie JDialog, quoi...

    Le seul pépin que j'ai pas résolu : si, quend ta JDialog est ouverte, tu minimise (avec le petit bouton de la barre de titre) l'explorateur, et que tu le réouvre, on ne voit plus la JDialog alors qu'elle est ouverte (il faut faire alt+tab pour la faire réapparaître). Mais bon, c'est mineur par rapport au problème de départ (pour mon applet en tout cas).

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

  3. #3
    Membre à l'essai
    Inscrit en
    Mai 2003
    Messages
    34
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 34
    Points : 20
    Points
    20
    Par défaut
    Merci pour l'aide. Ca marche.

  4. #4
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 016
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 016
    Points : 23 705
    Points
    23 705
    Par défaut
    Faudrait que je le propose pour le mettre dans la FAQ, tiens... Parce que ça marche avec n'importe quel navigateur...

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 22/02/2005, 15h49
  2. Réponses: 6
    Dernier message: 22/12/2004, 11h00
  3. Afficher une dropdownlist lors de modif dans une DataGrid
    Par MiJack dans le forum C++Builder
    Réponses: 2
    Dernier message: 08/11/2004, 17h42
  4. Perte de gestionnaire d'événements dans une fenêtre
    Par Benjamin GAGNEUX dans le forum Composants VCL
    Réponses: 15
    Dernier message: 23/08/2004, 20h14
  5. Supprimer la croix dans une fenêtre modale
    Par AnneOlga dans le forum C++Builder
    Réponses: 3
    Dernier message: 15/01/2004, 14h52

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