Image d'introduction

Contenu du snippet

Cette source peut etre utilisée pour présenter ,avec une image, un programme.
En ce moment tout les programme le font, (ex : Adobe, word, ....)

C'est une image qui commence son parcours en haut de la fenetre et se termine au centre de l'ecran.

Ce prog s'adapte à la resolution de l'ecran et a la taille de l'image

Il est a noter que cette fenetre est une JWindow (donc on ne voit vraiment quye l'image et pas le cadre de la fenetre)

Source / Exemple :


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

public class Introduction extends JWindow
{
  int x = 0 ;
  int y = 0 ;
  Image image = null ;
  // recupere la taille de l'ecran
  Dimension screen = Toolkit.getDefaultToolkit().getScreenSize();

  public Introduction()
  {
    // Charger image
    image = getToolkit().getImage(".\\images\\LogoC8.jpg");

    // Créer MediaTracker
    MediaTracker mt = new MediaTracker(this);

    // Lier MediaTracker avec image
    mt.addImage(image, 0);
    try
    {
      //Attendre le chargement complet de l'image
      mt.waitForAll();
   }
   catch (InterruptedException e) {}
   // Déclencher nouveau dessin
   repaint();

    initGUI() ;
    deplacerFenetre() ;
    try
    {
      // delai d'attente en statique (a la fin du mouvement)
      Thread.sleep(1000);
    }
    catch (Exception e) {}
    // on cache la fenetre pour laisser place à celle principale
    this.setVisible(false);

  }
  /**

  • Méthode paint
  • permet de dessiner l'image
  • /
public void paint(Graphics g) { // Dessiner image if (image != null) { g.drawImage(image,0,0,this); } } /** *
  • /
public void initGUI() { // la taille de la fenetre s'adapte a la taille de l'image voulue int largeur = image.getWidth(this) ; int hauteur = image.getHeight(this) ; this.setSize(largeur, hauteur); // on se place au entre de la fenetre x = (screen.width - this.getSize().width)/2 ; y = 0 ; //defini la position this.setLocation(x,y); this.setVisible(true); } /**
  • deplacerFenetre
  • deplace la fenetre sur un plan Y pour un effet d'introduction
  • /
void deplacerFenetre() { //System.out.println("taille : " +(screen.height - this.getSize().height - 50)) ; for(int i =y ; y < (screen.height - this.getSize().height - 50)/2 ; i+=10) { y += 10 ; this.setLocation(x, y) ; try { // on attend 35ms entre chaque transition Thread.sleep(35); } catch (Exception e) {} } } }

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.