Partage
  • Partager sur Facebook
  • Partager sur Twitter

Java et la 2d

    4 mai 2007 à 3:33:18

    Bonjours à tous, je suis débutant en java avec la 2d et je voudrai savoir s'il est possible d'ouvrire une fenêtre en pleine écran ??

    merci


    ps: si quelqu'un c'est comment faire un .jar dite le moi
    • Partager sur Facebook
    • Partager sur Twitter
      4 mai 2007 à 3:58:06

      T'est chanceux, j'ai déjà fait une classe qui permet de savoir la grandeur de l'écran, et aussi de mettre en plein écran :



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

              class Ecran {
                     
                      public Ecran() {
                              initGD();       
                      }
                      /************************************************************************/
                      public static Dimension getScreenSize() {
                              return Toolkit.getDefaultToolkit().getScreenSize();
                      }
                     
                      public static int getWidth() {
                              return (int)getScreenSize().getWidth();
                      }
                     
                      public static int getHeight() {
                              return (int)getScreenSize().getHeight();
                      }
                     
                      public static Point center(Dimension d) {
                              int w  = (int)d.getWidth();
                              int h  = (int)d.getHeight();
                              int sw = (int)getScreenSize().getWidth();
                              int sh = (int)getScreenSize().getHeight();
                              return (new Point( sw/2-(w/2) , sh/2-(h/2) ));
                      }
                     
                      /*************************************************************************/
                      public int setFullScreen(JFrame window,int width,int height) {
                              DisplayMode dm = getCurrentDisplayMode();
                              return
                               setFullScreen(window,new DisplayMode(width,height,dm.getBitDepth(),dm.getRefreshRate()));
                      }
                     
                      public int setFullScreen(JFrame window) {
                              return setFullScreen(window,getCurrentDisplayMode());
                      }
                     
                      public boolean isFullScreen() {
                              if (getFullScreenWindow() == null)
                                      return false;
                              return true;
                      }
                     
                      public void restoreFullScreen() {
                              Window window = getFullScreenWindow();
                              if (window != null)
                                      window.dispose();
                              gd.setFullScreenWindow(null);
                 }
                           
                      /********************************************/
                
                 private int setFullScreen(JFrame window,DisplayMode displayMode) {
                   initGD();
                   if (window == null)
                         return 1;
              window.setUndecorated(true);
              window.setResizable(false);
              if (gd.isFullScreenSupported())
                              gd.setFullScreenWindow(window);
              if (displayMode != null && gd.isDisplayChangeSupported()) {
                  try {
                      gd.setDisplayMode(displayMode);
                  } catch (Exception e) {
                      System.err.println(e);
                      return 1;
                  }
              }
              else return 1;
              return 0;
                      }
                 private GraphicsDevice getGraphicsDevice() {
                              return gd;   
                      }
                
                 private DisplayMode getCurrentDisplayMode() {
                              initGD();
                              return gd.getDisplayMode();
                      }
                     
                 private Window getFullScreenWindow() {
                              if (gd != null)
                                      return gd.getFullScreenWindow();
                              else System.err.println("(getFullScreenWindow) GD est null !");
                              return null;
                 }
                
                 private void initGD() {
                              if (gd == null) {
                                      GraphicsEnvironment ge = GraphicsEnvironment.getLocalGraphicsEnvironment();
                              gd = ge.getDefaultScreenDevice();
                      }       
                      }
                             
                      private GraphicsDevice gd = null;
              }


      EXEMPLE D'UTILISATION :


      JFrame f = new JFrame(); // à remplacer par ton propre JFrame
      Ecran e = new Ecran();
      if (e.setFullScreen(f,1024,768) == 1) // les nombres sont la résolution en X et en Y
          JOptionPane.showMessageDialog(null,"Résolution d'écran incompatible.","Erreur",JOptionPane.YES_NO_OPTION);
      // ....


      Note que System.exit(0); remettra bien l'écran à la taille normal...

      ;)
      • Partager sur Facebook
      • Partager sur Twitter
      Altarapp.com - Applications, Code Snippets, API Wrappers et etc, le tout en C# le plus clair du temps!
        4 mai 2007 à 4:51:21

        merci beaucoup shadosan pour ta class c'est vraiment très gentil de ta part et je vais analiser ton code lorsque j'aurai le temps pour bien comprendre comment tu a fait

        merci encore
        • Partager sur Facebook
        • Partager sur Twitter
          4 mai 2007 à 13:31:17

          Merci ^^

          Humm pour ton affaire de JAR, je t'envoie sur cette page; elle contient plusieurs trucs qui pourrait *peut-être* t'intéresser ;)

          http://java.developpez.com/faq/java/?page=execution
          • Partager sur Facebook
          • Partager sur Twitter
          Altarapp.com - Applications, Code Snippets, API Wrappers et etc, le tout en C# le plus clair du temps!

          Java et la 2d

          × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
          × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
          • Editeur
          • Markdown