Título: Ayuda con programa de graficos en java Publicado por: phoenix_88 en 26 Febrero 2013, 15:45 pm Hola a todos, quisiera saber si alguno de uds me podria colaborar para elaborar un applet en el cual hayan 2 botones de tal manera que al presionar uno de los botones genere figuras al azar empezando más debajo de la coordenada 60, 80 y con el otro limpie la pantalla.
Les agradezco si me pudieran colaborar con esto ya que he estado buscando sobre el tema pero no he logrado comprender. Título: Re: Ayuda con programa de graficos en java Publicado por: 1mpuls0 en 26 Febrero 2013, 17:37 pm ._. no sé donde búscaste o a qué te refieres con que no encontraste.
http://xolaltenco.wordpress.com/2007/10/14/dibuja-figuras-en-java/ http://casidiablo.net/codigo-java-graficos-2d/ y tienes un mal concepto de "Colaborar" http://es.wikipedia.org/wiki/Colaboraci%C3%B3n Con esa actitud nadie aqui te ayudará. Saludos. Título: Re: Ayuda con programa de graficos en java Publicado por: phoenix_88 en 26 Febrero 2013, 19:04 pm Bueno si disculpa la verdad es la primera vez que ingreso pero tal vez la desesperación a este inconveniente me llevo a plantear mal la pregunta, en realidad lo que no se es como hacer para que al presionar el boton genere figuras aleatoriamente sin necesidad de crear mas botones.
Slds. Título: Re: Ayuda con programa de graficos en java Publicado por: 1mpuls0 en 26 Febrero 2013, 21:10 pm Cóloca lo que llevas de código y te ayudo.
Saludos. Título: Re: Ayuda con programa de graficos en java Publicado por: phoenix_88 en 27 Febrero 2013, 15:03 pm Hola, mira lo que llevo no se que tengo mal pero al ejecutarlo la ventana del applet queda en blanco.
Te agradezco si me pudieras indicar cual es el problema. Buen día. import java.applet.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; public class actividad3 extends Applet implements ActionListener{ public void init() { setSize(460,320); } Label label; Button b1,b2,b3,b4; boolean circulo = false; boolean cuadrado= false; boolean triangulo= false; Color color; actividad3(String titulo){ setLayout(new FlowLayout()); setBackground(Color.CYAN); // define las caracteristicas de la ventana del programa uno Font fuente = new Font("Verdana",Font.BOLD,30); label = new Label("");label.setFont(fuente); color = new Color(aleatorio(255),aleatorio(255),aleatorio(255)); b1 = new Button("Circulo"); // crea los botones de la parte superior b2 = new Button("Cuadrado"); b3 = new Button("Triangulo"); b4 = new Button("Limpia"); add(b1);add(b2); add(b3);add(b4); b1. addActionListener(this); b2. addActionListener(this); b3. addActionListener(this); b4. addActionListener(this); addWindowListener(new WindowAdapter() {public void windowClosing(WindowEvent e) {setVisible(false);}}); } public void actionPerformed(ActionEvent ae) { if (ae.getSource() == b1) { // muestra la figura del circulo circulo = true;cuadrado = false;triangulo=false; } else if (ae.getSource() == b2) { // muestra la figura del cuadrado cuadrado = true;circulo = false;triangulo=false; } else if (ae.getSource() == b4) { // limpia la pantalla circulo = false;triangulo=false;cuadrado = false; } else if (ae.getSource() == b3) { // muestra la figura del triangulo triangulo = true;cuadrado = false;circulo = false; } repaint(); } public void paint(Graphics g) { if (circulo) { //define las coordenadas y el borde del circulo color rojo g.setColor(Color.red); int x1 = 110; int y1 = 150; g.drawOval(x1,y1,100,100); g.translate(x1, y1); } else if (cuadrado) { //define las coordenadas, determina un color de fondo y a la figura le determina un color de relleno g.setColor( color );; setBackground(Color.black); int x1 = 110,y1 = 150; g.drawRect(x1,y1,100,100); g.fillRect( x1,y1,100,100 ); } else if (triangulo) { //define las coordenadas y el borde del circulo color naranja g.setColor(Color.ORANGE); int x1= 100,y1= 50,z1= 200; int a1= 100,y3 = 50,c1= 0; int d1= 200,e1= 150,f1= 1; g.drawLine(x1, y1, z1,150); g.drawLine(a1, y3, c1,150); g.drawLine(d1, e1, f1,150); }} private int aleatorio( int rango ) { double retornoMath; retornoMath = Math.random(); return( (int)( retornoMath * rango ) ); } private void addWindowListener(WindowAdapter windowAdapter) { throw new UnsupportedOperationException("Not yet implemented"); } } Título: Re: Ayuda con programa de graficos en java Publicado por: 1mpuls0 en 27 Febrero 2013, 17:59 pm Listo!
Perdona lo tuve que hacer con nb no tengo mucho tiempo. Solo te toca "limpiar" el código xD Saludos. Código
Título: Re: Ayuda con programa de graficos en java Publicado por: phoenix_88 en 27 Febrero 2013, 19:19 pm Darhius muchisimas gracias por tu ayuda.
Aprovechando te queria preguntar si conoces algún método o si tienes algún link donde me pueda guiar para que con un solo boton me genere las figuras de forma aleatoria sin necesidad de crear mas botones. Slds. Título: Re: Ayuda con programa de graficos en java Publicado por: 1mpuls0 en 27 Febrero 2013, 21:00 pm Pues... se me ocurrió lo siguiente xD tal vez puedas darte una idea y mejorarlo.
Código
Si lo vas a hacer así te recomiendo que utilices el método seleccionaAleatorio (me costo uno y el otro xD) si solo se utiliza Math.random() * tamanoArreglo en este caso se iba hasta el índice 3 :/ y ocurria "ArrayIndexOutOfBoundsException" y si hacia Math.random() * tamanoArreglo - 1 cuando el índice era 0 se obtenia el índice -1 xD Saludos. |