dessin dans un canvas [java] - Programmation
Marsh Posté le 06-06-2001 à 17:01:28
jai pas tout pigé a ton truc... mais tu dois jouer avec paint en effet...
Marsh Posté le 06-06-2001 à 17:16:32
voilà j'ai rajouter ça dans le contructeur
palette.add(g);
puis j'ai rajouter une methode
public void paint(Graphics g){
g.drawOval(0,0,30,20);
}
mais mon dessin se met pas dans mon canvas !
Marsh Posté le 06-06-2001 à 17:19:29
Tu derive le canvas et tu definis le paint dans la classe derivee
dans ta classe du main... tu instancie ta classe derivee...
la, ca devrait marcher
[edit]--Message édité par wouatouwouatou--[/edit]
Marsh Posté le 06-06-2001 à 17:21:54
pas compris ?.
je rajoute quoi à mon code pour avoir un cercle dans le canvas palette2 ?
Marsh Posté le 06-06-2001 à 17:33:34
Code :
|
et dans le main tu fais un new MonCanvasOval() au lieu de new Canvas() au nivo de palette2
[edit]--Message édité par wouatouwouatou--[/edit]
Marsh Posté le 06-06-2001 à 18:01:14
merchi boco !
en fait il faut toujour dériver une class !?
bizar ce canvas !
au fait, c'est le seule objet où on peut dessiner dessus ? ou y en a d'autre ?
Marsh Posté le 07-06-2001 à 09:37:50
pas tjrs mais souvent
Marsh Posté le 06-06-2001 à 16:33:54
je vous ai mis le code pour être plus claire : voilà j'ai un panel avec des boutons est deux canvas (palette et palette2).
je voudrais qu'il y ai dans le constructeur de dessiné un rectangle dans palette et un cercle dans palette2.
est-ce que je dois rajouter la methode paint(graphics g) dans le constructeur ?
ou on le rajout par palette.add(g)
/////////////////////////////////////////
import java.awt.*;
import java.awt.event.*;
class Progdessin extends Frame {
Progdessin(){
Panel pan1=new Panel(new FlowLayout());
Button bcercle=new Button("cercle" );
Button brectangle=new Button("rectangle" );
Canvas palette=new Canvas();
Canvas palette2=new Canvas();
palette.setBackground(Color.lightGray);
palette2.setBackground(Color.red);
pan1.add(bcercle);pan1.add(brectangle);
add(pan1);
add((palette),c);
add((palette2),c);
setSize(500,500);
setVisible(true);
}
public static void main(String [] args){
new Progdessin();
}
}