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

Interfaces Graphiques en Java Discussion :

Simulation d'un écran plus grand


Sujet :

Interfaces Graphiques en Java

  1. #1
    SGJ
    SGJ est déconnecté
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 59
    Par défaut Simulation d'un écran plus grand
    Bonjour,

    Je souhaite tester mon application sur un écran 1280X1024 alors que j'ai un écran 1024X768. J'ai pensé que ça sera facile à simuler en faisant que la méthode getPreferredSize() retourn une Dimension(1280,1024). Mais j'ai été surpris de voir que la dimension retournée n'a pas été utilisée mais c'est la dimension de l'écran qu a été utilisée. On dirait que Java s'est rendu compte que la taille préférée que j'ai demandée est plus grande que la taille de l'écran et c'est la taille de l'écran qu a été choisie.

    Auriez vous une idée comment forcer la dimension 1280X1024 ou comment faire des simulation pour tester une application sur un écran 1280X1024 ou plus grand alors que nous n'avons qu'un écran 1024X768.

    Le code ci-dessous isole ce problème :
    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
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    import javax.swing.JFrame;
    import javax.swing.JPanel;
    import java.awt.Dimension;
    import java.awt.Graphics;
    import java.io.IOException;
     
    class comp extends JPanel
    {
    	public comp()
    	{}
     
        public Dimension getPreferredSize() {
    		return new Dimension(1280,1024);
        }  
     
        protected void paintComponent(Graphics g) 
        {
          super.paintComponent(g);
          System.out.println("paintComponent="+getWidth()+" "+getHeight());
        }    
     
    	public static void main(String[] args) throws IOException 
    	{
        	comp app = null;
        	JFrame frm =null;
     
        	app=new comp();
     
        	JFrame frame = new JFrame();
            try
            {
            	frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            	frame.setContentPane(app);
            } catch(Exception ex) {}
            frame.pack();
            frame.setLocation(0,0);
            frame.setVisible(true);
    	}
    }

  2. #2
    Membre Expert
    Avatar de krachik
    Inscrit en
    Décembre 2004
    Messages
    1 964
    Détails du profil
    Informations forums :
    Inscription : Décembre 2004
    Messages : 1 964
    Par défaut
    Bonjour
    Pourrais-tu préciser exactement ce que tu veux faire?C'est juste pour adapter la frame suivant les différentes résolutions sur différents écrans?
    Pourquoi ne penses-tu pas aux Layout ?

    Cordialement

  3. #3
    SGJ
    SGJ est déconnecté
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 59
    Par défaut
    Salut,

    Ce que je veux faire est tout simplement tester mon application qui contient une interface utilisateur sur un écran plus grand que mon écran pour voir si tout va bien. Je pense qu'il n'y aura pas de problèmes, mais je préfère tester.

    Etant donné que je ne souhaite pas acheter d'autres écrans pour faire le teste, je souhaite simuler un plus grand écran sur mon écran en utilisant la méthode getPreferedSize() comme je l'ai expliqué. Mais ça ne marche pas parce que la valeur retournée par cette méthode est ignorée au profit de la dimension de l'écran. Comment faire pour tester mon appli sur un plus grand écran sans en acheter un.

    Mon application n'utilise pas les layers pour diverses raisons et ce n'est pas possible de changer cela.


    Merci

  4. #4
    Modérateur
    Avatar de dinobogan
    Homme Profil pro
    ingénieur
    Inscrit en
    Juin 2007
    Messages
    4 073
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France

    Informations professionnelles :
    Activité : ingénieur
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2007
    Messages : 4 073
    Par défaut
    La méthode "getPreferredSize" ne donne pas une taille obligatoire. C'est une taille indicative. Le componant parent va faire ce qu'il peut pour utiliser cette taille. Essai de retourner la même taille dans la méthode "getMinimumSize" également.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java
    Que la force de la puissance soit avec le courage de ta sagesse.

  5. #5
    SGJ
    SGJ est déconnecté
    Membre confirmé
    Inscrit en
    Décembre 2005
    Messages
    59
    Détails du profil
    Informations forums :
    Inscription : Décembre 2005
    Messages : 59
    Par défaut
    Merci pour ta réponse mais j'ai essayé getMinimumSize() et setMinimumSize() sans succés.

Discussions similaires

  1. Réponses: 106
    Dernier message: 26/09/2012, 09h59
  2. Comment afficher mon site en plus grand sur des écran 27 pouce
    Par pierrot10 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 16/04/2012, 08h22
  3. Afficher un dessin plus grand que l'écran
    Par Flow_75 dans le forum Android
    Réponses: 2
    Dernier message: 17/08/2011, 19h15
  4. Div plus grand que l'écran
    Par tabouet dans le forum Mise en page CSS
    Réponses: 8
    Dernier message: 25/03/2009, 21h56
  5. Barre de défilement dans une figure plus grande que l'écran
    Par camillechambon dans le forum Interfaces Graphiques
    Réponses: 2
    Dernier message: 23/04/2007, 10h40

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