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 :

Renforcer les bords d'un JDesktopPane


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Avatar de rozwel
    Inscrit en
    Mars 2002
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 324
    Par défaut Renforcer les bords d'un JDesktopPane
    Quand j'ajoute une JInternalFrame à un JDesktopPane, rien n'empêche qu'une partie de cette fenêtre dépasse de l'espace visible du JDesktopPane, ce qui a le don de cacher les boutons de manipulation en haut à droite. Est-ce qu'il y a un moyen de faire en sorte que les bords du JDesktopPane soient "hermétiques", que tout ce qu'il contient soit entièrement visible?

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    A priori aller voir du coté du DesktopManager et de redéfinir certaines méthodes (dragFrame en particulier)

  3. #3
    Membre éclairé
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Janvier 2007
    Messages
    697
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Calvados (Basse Normandie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Janvier 2007
    Messages : 697
    Par défaut
    salut,
    essaye ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    public Fenetre(){
            super("ma fenetre");
            desktopPane = new JDesktopPane();
            desktopPane.setBackground(Color.gray);
            contentPane = this.getContentPane();
            contentPane.add(desktopPane);
            fenetreInterne = new JInternalFrame("Sans-titre1",true,true,true,true);    
            fenetreInterne.setSize(getSize());
            fenetreInterne.setVisible(true);        
            desktopPane.add(fenetreInterne);
            setVisible(true);        
        }

  4. #4
    Membre éclairé
    Avatar de rozwel
    Inscrit en
    Mars 2002
    Messages
    324
    Détails du profil
    Informations forums :
    Inscription : Mars 2002
    Messages : 324
    Par défaut
    Finalement, j'ai réussi en implémentant mon propre DesktopManager comme ça:
    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
     
    public class MyDesktopManager extends DefaultDesktopManager {
        private JDesktopPane desktop;
     
        public MyDesktopManager(JDesktopPane desktop) {
            this.desktop = desktop;
        }
     
        public void dragFrame(JComponent f, int newX, int newY) {
            int x = newX;
            int y = newY;
            if (f instanceof JInternalFrame) {
                JInternalFrame frame = (JInternalFrame) f;
                if (x + frame.getSize().width > desktop.getSize().width) {
                    x = desktop.getSize().width - frame.getSize().width;
                }
                if (y + frame.getSize().height > desktop.getSize().height) {
                    y = desktop.getSize().height - frame.getSize().height;
                }
                if (x < 0) x = 0;
                if (y < 0) y = 0;
            }
            super.dragFrame(f, x, y);
        }
    }

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

Discussions similaires

  1. les bords d'une cellule
    Par nawax88 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 23/04/2007, 16h31
  2. Colorier les bords d'une box
    Par cygvslince dans le forum Mise en forme
    Réponses: 2
    Dernier message: 07/03/2007, 21h26
  3. [Débutant] Bouton avec les bords arrondis
    Par zwieback dans le forum Graphisme
    Réponses: 3
    Dernier message: 12/06/2006, 13h18
  4. [debutant] Retirer les bords de Jcomponent
    Par cosmos.1097 dans le forum Agents de placement/Fenêtres
    Réponses: 4
    Dernier message: 29/06/2005, 17h27

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