Canvas personalizado en ventana echa con el editor del net beans IDE

Palasi
25 de Enero del 2004
Estoy haciendo unas practicas en las que tengo que hacer una ventana en la que haya un canvas en el que hacer unos dibujos.

Para hacer los dibujos que yo quiero me tengo que hacer una clase, MiCanvas, que extienda la clase canvas y que haga sus propios metodos de dibujo.

Haciendo la ventana escribiendo yo todo el codigo no tengo problema, pero preferiria hacerla usando el GUI editor del net beans, que me ahorraria mucho tiempo.

El problema que tengo es que lo estoy haciendo con el GUI editor del net beans IDE, y solo se meter un canvas normal, no se como hacer para poder meter mi clase MiCanvas. He estado mirando un poco la ayuda y he visto que se puede personalizar el codigo, pero no me aclaro. Tambien he visto que puedo crear mis propios componentes graficos creando una bean, pero tiene que haber algo mas sencillo.

A ver si me podeis decir alguno como hacerlo o recomendarme algun tutorial donde se explique como hacerlo con el GUI editor.

Gracias.

Ana
25 de Enero del 2004
Hola ! Yo tambien tengo que dibujar un canvas... (además d más botones) y tb tuve q optar por escribir yo misma el código.El problema es q no me visualiza el canvas.Te mando el código x si m puedes hechar una mano... donde tengo el TextArea en realidad quiero un Canvas.MUCHAS GRACIAS POR ADELANTADO.
import java.awt.*;
import java.awt.event.*;

public class pantalla extends Frame {
Panel panel;

public pantalla() {

panel = new Panel();
panel.setBackground( Color.red );
add( panel );

GridBagConstraints gbc = new GridBagConstraints();
GridBagLayout gridbag = new GridBagLayout();
panel.setLayout( gridbag );


gbc.fill = GridBagConstraints.BOTH;


Button boton0 = new Button( "B0" );
gridbag.setConstraints( boton0,gbc );
panel.add( boton0 );
Button boton1 = new Button( "B1" );
gridbag.setConstraints( boton1,gbc );
panel.add( boton1 );
Button boton2 = new Button( "B2" );
gridbag.setConstraints( boton2,gbc );
panel.add( boton2 );
Button boton3 = new Button( "B3" );
gridbag.setConstraints( boton3,gbc );
panel.add( boton3 );
Button boton4 = new Button( "B4" );
gridbag.setConstraints( boton4,gbc );
panel.add( boton4 );
Button boton5 = new Button( "B5" );
gridbag.setConstraints( boton5,gbc );
panel.add( boton5 );
Button boton6 = new Button( "B6" );
gridbag.setConstraints( boton6,gbc );
panel.add( boton6 );
Button boton7 = new Button( "B7" );
gridbag.setConstraints( boton7,gbc );
panel.add( boton7 );
Choice tipo = new Choice( );
tipo.addItem("Insertar");
tipo.addItem("Eliminar ");
tipo.addItem("Buscar ");
gridbag.setConstraints(tipo,gbc);
panel.add(tipo);


TextField txtape = new TextField( "Nombre:");
gridbag.setConstraints( txtape,gbc );
panel.add( txtape );


Button boton8 = new Button( "B8" );
gbc.gridwidth = GridBagConstraints.REMAINDER;
gridbag.setConstraints( boton8,gbc );
panel.add( boton8 );

TextArea txtComent = new TextArea();
gbc.fill=GridBagConstraints.BOTH;
gridbag.setConstraints( txtComent,gbc );
panel.add( txtComent );

addWindowListener( new WindowAdapter() {
public void windowClosing( WindowEvent evt ) {
System.exit( 0 );
}
} );
}


public static void main( String args[] ) {
pantalla miFrame = new pantalla();


miFrame.setTitle( "Mi aplicacion" );
miFrame.pack();
miFrame.show();
}
}
class Circulos extends Canvas{

public void paint (Graphics g){

g.setColor ( Color.blue);
g.fillOval (50, 25, 300,150 );
}
}