The Daily Dish Watch What Happens Live with Andy Cohen Andy and Padma Come Together for an Important Cause Join your favorite celebrities in working to Erase the Hate. | IMDb: 6.4 S1E6 Million Pound Menu - Season 1 | Saath Phero Ki Hera Pheri
  Login

  

Algun programador en Java?





Thread creado por Madden182 el 03/11/2013 12:54:00 am. Lecturas: 2,027. Mensajes: 10. Favoritos: 1





03/11/2013 12:54:00 am 
       0                           
Madden182


Miembro desde: 21/07/2012

Threads abiertos: 22
Mensajes: 1097  
Subtítulos subidos: 0
Threads Favoritos: 0





Hola gente ando medio quemado haciendo esto, si alguno me puede tirar una idea me ayudaria mucho no es nada de otro mundo

resulta que empece a hacer una batalla naval lo termine pero es todo en consola y lo quiero hacer con gui pero hay algo que me esta matando hice la matriz con jbuttons

pastebin.com/Y8b5YERi

pero la cosa es que tengo que agregarle los barcos (fotos) aleatoriamente para que halla un actionclicked y se vea si hay barco o le erro, ahi esta mi problema no encuentro la forma de ponerle aletoriamente a los botones un barco o una foto de que esta vacio el lugar.

antes como era todo en consola la logica era asi mas o menos

pastebin.com/TVED7kKk

le agregaba a una matriz llena con 0 (ceros) un 1 (uno) aleatoriamente como barcos.
no se si habra algun programador aca pero posteo ya que estoy quemado capaz mañana me levanto y lo saco pero queria compartir mi duda con la familia sudbvx


03/11/2013 01:32:30 am 
       1                           
Angeluzmx


Miembro desde: 02/06/2011

Threads abiertos: 377
Mensajes: 4212  
Subtítulos subidos: 0
Threads Favoritos: 1





Donde aprendiste java?

Es difícil?


03/11/2013 01:35:58 am 
       0                           
Madden182


Miembro desde: 21/07/2012

Threads abiertos: 22
Mensajes: 1097  
Subtítulos subidos: 0
Threads Favoritos: 0





Angeluzmx escribió:
Donde aprendiste java?Es difícil?


no, no es dificil aprendes solo si te pones a estudiar, pero nunca lo hagas cuando estas con mucho sueño

PD: obviamente es mejor estudiar en una universidad


03/11/2013 10:08:52 am 
       1                           
choele


Miembro desde: 05/10/2006

Threads abiertos: 0
Mensajes: 1  
Subtítulos subidos: 0
Threads Favoritos: 0



Las 2 primeras soluciones que se me ocurren son estas

1) Extender en Jbutton haciendo un override de paintComponent y getPreferredSize

2) Hacer un panel con una imagen y ponerle un listener al onclick

Si no te sirven avisa y algo mas se me va a ocurrir


03/11/2013 11:20:29 am 
       0                           
Madden182


Miembro desde: 21/07/2012

Threads abiertos: 22
Mensajes: 1097  
Subtítulos subidos: 0
Threads Favoritos: 0





choele escribió:
Las 2 primeras soluciones que se me ocurren son estas1 Extender en Jbutton haciendo un override de paintComponent y getPreferredSize2 Hacer un panel con una imagen y ponerle un listener al onclickSi no te sirven avisa y algo mas se me va a ocurrir


recien me levanto y con ideas asi q si no me funcionan pruebo, gracias por pasarte


03/11/2013 11:33:57 am 
       1                           
darkyomy


Miembro desde: 30/09/2007

Threads abiertos: 9
Mensajes: 68  
Subtítulos subidos: 1
Threads Favoritos: 0





Hola

Jbutton no te lo recomiendo mucho para lo que tu quieres hacer, ya que solo podrias poner imagen en un solo espacio de la matriz. La mejor opcion seria que usaras canvas directamente. Pero si ya quieres empezar a realizar un trabajo mas profecional, deberias usar algun wrapper de algun componente grafico como JOGL (Java openGL) o el wraper de java para SDL.

Si realemente quieres usar JButton, te recomiendo que uses imagenes agregadas como iconos:

JButton button = new JButton()
try {
Image img = ImageIO.read(getClass().getResource(´´resources/water.bmp´´))
button.setIcon(new ImageIcon(img))
} catch (IOException ex) {
}

Este codigo agregaria una imagen a un solo boton, pero en el caso de tener un barco que ocupe 2 o mas posiciones, te recomendaria partir la imagen en secciones y pintar las secciones en cada boton.


03/11/2013 11:38:26 am 
       0                           
Madden182


Miembro desde: 21/07/2012

Threads abiertos: 22
Mensajes: 1097  
Subtítulos subidos: 0
Threads Favoritos: 0





darkyomy escribió:
Hola Jbutton no te lo recomiendo mucho para lo que tu quieres hacer, ya que solo podrias poner imagen en un solo espacio de la matriz. La mejor opcion seria que usaras canvas directamente. Pero si ya quieres empezar a realizar un trabajo mas profecional, deberias usar algun wrapper de algun componente grafico como JOGL Java openGL o el wraper de java para SDL. Si realemente quieres usar JButton, te recomiendo que uses imagenes agregadas como iconos: JButton button = new JButton try { Image img = ImageIO.readgetClass.getResourceresources/water.bmp button.setIconnew ImageIconimg } catch IOException ex { }Este codigo agregaria una imagen a un solo boton, pero en el caso de tener un barco que ocupe 2 o mas posiciones, te recomendaria partir la imagen en secciones y pintar las secciones en cada boton.


claro es un trabajo asi nomas para entregar en la facultad, los barcos van a ocupar un solo espacio por eso uso jbutton, lo que voy a intentar es agregarle un icono al actionclicked u otro aleatoriamente


03/11/2013 12:11:41 pm 
       0                           
saiema


Miembro desde: 11/06/2013

Threads abiertos: 0
Mensajes: 8  
Subtítulos subidos: 0
Threads Favoritos: 0



No hagas una matriz de botones, hace una matriz común, agregale un render para que dibuje los barcos y a la tabla le pones un listener, cuando haces click en una casilla podés saber en que casilla hiciste click.

Lo del random es independiente de la GUI, la GUI solo es visual, el resto el lógica y modelo/estado.
Para un random para una tabla haces dos random entre 1 - longitud de la tabla y listo


03/11/2013 01:07:28 pm 
       0                           
Madden182


Miembro desde: 21/07/2012

Threads abiertos: 22
Mensajes: 1097  
Subtítulos subidos: 0
Threads Favoritos: 0





bueno logre hacer esto ahora tengo el problema que toco un boton y me descubre todos


03/11/2013 01:32:38 pm 
       1                           
darkyomy


Miembro desde: 30/09/2007

Threads abiertos: 9
Mensajes: 68  
Subtítulos subidos: 1
Threads Favoritos: 0





La manera mas sencilla de tener el control sobre los barcos a pintar es usar una variable global de Points y crear una clase extendidad de JButtons que tenga point como propiedad.

Aqui esta un rapido ejemplo que hice para demostrar mi punto: Clase para detectar botones barco

dentro del evento del boton seria donde tendrias que poner tu logica de que deba de pasar cuando le dan a un barco




pero

1