slimgodin
Messages postés1Date d'inscriptionmercredi 25 janvier 2012StatutMembreDernière intervention25 janvier 2012
-
25 janv. 2012 à 21:54
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020
-
26 janv. 2012 à 07:48
Bonjour,
Je suis actuellement après faire un cours de java par correspondance. Il s'agit d'une introduction au Java selon Téluq!
La question avec laquelle j'ai de la difficulté est la suivante :
Afficher les messages d'introduction et de bienvenue à l'École Saint Pruneau. Ces messages doivent être mis dans un fichier .jpeg. Vous devez étudier le code du ficher window.java pour plus d'information.
Pour la première partie, je n'ai aucun problème à afficher le message de bienvenue qui serait le suivant :
import java.util.Scanner;
import java.io.*;
public class Bienvenue
{
public static void main (String[] args)
{
Scanner EntreeClavier=new Scanner(System.in);
System.out.println("Veuillez entrer votre nom suivit d'une virgule et d'un espace et votre prénom :");
String str = EntreeClavier.nextLine();
System.out.println("\n\n\nBienvenue à l'école Saint-Pruneau : Présentation du concours SUDOKU");
System.out.println(str);
System.out.println("\nFaites votre choix:");
System.out.println("SUDOKU DÉBUTANT");
System.out.println("SUDOKU MOYEN");
System.out.println("SUDOKU AVANCÉ:");
System.out.println("\nCliquez ici pour visualiser les règles du jeu:");
return;
}
}
Cependant, pour la deuxième partie, je n'ai aucune idée de ce que je dois faire. Je sais ce qu'est un fichier Jpeg et je sais qu'avec la fonction ImageIcon = new ImageIcon("imageenquestion.jpg"); nous allons chercher la photos jpeg voulus.
Mais comment faire pour mette le texte dans un fichier jpeg?
Le fichier window.java qu'on me fournit pour élaborer ce programme est le suivant :
public class window extends JWindow
{
ImageIcon imIntro = new ImageIcon("images\\Lintro.jpg");
ImageIcon imRegles = new ImageIcon("images\\Lesregles.jpg");
static Thread t = new Thread();
static int thread = 0;
static JButton bouton;
static int X;
static int Y;
/* Parametres du constructeur :
X, Y: taille de la fenetre :)
type: 1-> Intro, 2->regles */
public window( int X, int Y, int type ) {
if (type 1 ) bouton new JButton(imIntro);
else bouton = new JButton(imRegles);
bouton.setPreferredSize(new Dimension(X, Y) );
fen.add( bouton);
bouton.setVisible( true );
show();
/* Si c'est une fenetre d'intro,
on ne l'affiche que 2 secondes */
if( type == 1 ) {
try {
t.sleep(2000);
thread = 1;
}
catch( java.lang.InterruptedException ex ) {
JOptionPane.showMessageDialog(null, "erreur");
}
dispose();
}
/* Si c'est une fenetre de regles,
on ne la ferme que quand l'utilisateur clique */
else {
bouton.addActionListener( new ActionListener() {
public void actionPerformed(ActionEvent e) {
dispose();
}
});
}
cs_Julien39
Messages postés6414Date d'inscriptionmardi 8 mars 2005StatutModérateurDernière intervention29 juillet 2020370 26 janv. 2012 à 07:48
Bonjour,
Le fichier window.java ne contient aucune informations sur la façon de créer cette image. Ce que tu peux faire est d'afficher le texte dans un JPanel et ensuite d'enregistrer le contenu de ce panel dans une image :
public void enregistrerImage() {
BufferedImage image = new BufferedImage(getWidth(), getHeight(), BufferedImage.TYPE_INT_RGB);
Graphics2D g2d = image.createGraphics();
if(!isOpaque()){
Color bg = getBackground();
bg = (bg.getAlpha() < 255) ? new Color(bg.getRed(), bg.getGreen(), bg.getBlue()) : bg;
Color color = g2d.getColor();
g2d.setColor(bg);
g2d.fillRect(0, 0, getWidth(), getHeight());
g2d.setColor(color);
}
paint(g2d);
g2d.dispose();
try {
ImageIO.write(image, "jpeg", new File("C:\\Documents and Settings\\Julien\\Bureau\\image.jpg"));
} catch (IOException e) {
e.printStackTrace();
}
}
Une autre remarque : le code fournit est vraiment de mauvaise, de très mauvaise qualité, je ne ferais pas trop confiance à cette méthode d'apprentissage par correspondance...