Aide pour dessiner en java

Fermé
Remy - 29 nov. 2005 à 11:51
 Utilisateur anonyme - 30 nov. 2005 à 08:54
Bonjour,

Voilà j'ai ecri un programme java dans une applet tout simple qui pemret d'afficher un cercle rempli de couleur jaune. en fait ce cercle est dessiné dans un nouveau composant graphique ( classe bulle) qui hérite de Canvas Dans cette classe je surcharge la methode paint et j'affiche mon cercle jaune. ensuite dans ma classe principale (classe main_bulle) qui est une applet, je défini et crée un panel puis j'ajoute un composant de type bulle a ce panel. Et il me semblait qu'en faisant ça ma bulle serait afficher dans le panel. alors que ce n'est pas le cas!!. Je ne comprends pas pourquoi. si quelqu'un peut m'expliquer? merci

Voilà le code des deux classes

import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.awt.image.*;
import java.net.*;


public class main_bulle extends Applet {


public bulle b;

private Panel pane;

private void createGUI() {

creePanel();
add(pane,"Center");
creecomp() ;

}

private void creePanel() {

// pas de layout: permet un positionnement absolu.
pane = new Panel(null);

}

private void creecomp() {
// cree une bulle
b =new bulle(200,20);
b.setBounds(200,20,30,30);
//ajoute cette bulle dans le panel
pane.add(b);


}


public void init() {
try {
javax.swing.SwingUtilities.invokeAndWait(new Runnable() {
public void run() {
createGUI();
}});
} catch (Exception e) {
System.err.println("createGUI didn't successfully complete");
}
}

public void start() {
}

public void stop() {
}

}


public class bulle extends Canvas{

public int hauteur=30;
public int largeur=30;
public int x;
public int y;
// Constructeur de notre composant.
public bulle(int abs, int ord) {
x = abs;
y = ord;


}
public void paint(Graphics g){

g.setColor(Color.yellow);
g.fillOval(x,y,30,30);
}


}
A voir également:

1 réponse

Utilisateur anonyme
30 nov. 2005 à 08:54
Salut!

import java.applet.Applet;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.HeadlessException;
import java.awt.Panel;

public class MainBulle extends Applet {
	public Bulle b;
	private Panel pane;

	public MainBulle() throws HeadlessException {
		super();
		init();
	}

	public void init() {
		pane = new Panel(null);
		add(pane, "Center");
		b = new Bulle(200, 20);
		this.setSize(new Dimension(300,300));
		pane.add(b);
		this.add(pane);
	}

	public void paint(Graphics g) {		
		b.paint(g);
	}
}


;-)
HackTrack
2