Foro de elhacker.net

Programación => Java => Mensaje iniciado por: d!lan en 2 Marzo 2014, 23:41 pm



Título: Eliminar Espacios entre componentes (matriz de jtextfield de 10*10)
Publicado por: d!lan en 2 Marzo 2014, 23:41 pm
Saludos compañeros

lo que sucede es que estoy haciendo un mapa de bits y pues tengo que representar una una matriz grafica de jtextfield de (10 pixeles por 10 pixeles) llenos de colores aleatorios pero me dicen que tengo que eliminar el espacio entre componentes es decir los jtextfield y pues debe quedar asi como en la figura que es de 30*30 pixeles osea 30 cuadros por 30 cuadros de jtextfiel lo maximo de cuadros o jtextfields a mostrar es de 50*50
como la siguiente imagen que es de 30*30 megapixeles (cuadros)
http://subefotos.com/ver/?0cb1080d09278a960908da92ce131cbao.png (http://subefotos.com/ver/?0cb1080d09278a960908da92ce131cbao.png)

pero no consigo hacerlo :s
Anexo: cuando estaba haciendo el post pude hacer lo siguiente xD

Código:
private void crearJlabels(){
         JFrame v = new JFrame();
         v.getContentPane().setLayout(null);
         GridBagConstraints cons=new GridBagConstraints();
         JPanel pj=new JPanel(null);
         pj.setSize(200,200);
         JTextField text1=new JTextField();
         JTextField text2=new JTextField();
         JTextField text3=new JTextField();
         JTextField text4=new JTextField();
         text1.setBounds(-1,2,10,10);
         text2.setBounds(-1,8,10,10);
         text3.setBounds(-1,13,10,10);
         text4.setBounds(-1,19,10,10);
         text1.setBackground(Color.yellow);
         text2.setBackground(Color.BLACK);
         text3.setBackground(Color.red);
         text4.setBackground(Color.blue);
//         pj.add(text1);
//         pj.add(text2);
//          pj.add(text3);
//           pj.add(text4);
//        
    
         this.jpaMatr.setLayout(null);
         this.jpaMatr.add(text1);
          this.jpaMatr.add(text2);
           this.jpaMatr.add(text3);
            this.jpaMatr.add(text4);
        this.matrz=new JTextField[50][50];
     //   this.jpaMatr.setLayout(new GridBagLayout());
       // this.jpaMatr.setSize(100,100);
         Border border = BorderFactory.createLineBorder(Color.yellow);
//        for (int i = 0; i <this.matrz.length; i++){
//            for (int j = 0; j <this.matrz[i].length; j++) {
//                this.matrz[i][j]=new JTextField();
////                this.matrz[i][j].setBorder(new EmptyBorder(4,4,4,4));
////                this.matrz[i][j].setBorder(border);
////                this.jpaMatr.add(this.matrz[i][j]);
//                cons.gridx=j;
//                cons.gridy=i;
//                
//            
//              // this.matrz[i][j].setSize(5,5);
//                this.matrz[i][j].setVisible(true);
//                 pj.add(this.matrz[i][j],cons);
//              //  v.getContentPane().add(this.matrz[i][j]);
//            }
//            
//        }
        pj.setLocation(200,200);
        pj.setBackground(Color.white);
        v.getContentPane().add(pj);
        pj.setVisible(true);
        v.pack();
        v.setVisible(true);
        v.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
    }

ahora lo que tengo que hacer es ponerlo a rodar en un ciclo y rogar a dios para que queden juntos (sin espacion )y el panel del tamaño preciso
si alguien me aconseja algo mas bien recibido es  ;D

adjunto una imagen con lo que se dio por probar de forma estatica
http://subefotos.com/ver/?a070a74a7f8db9a217c3b0d8c55fd9b0o.png (http://subefotos.com/ver/?a070a74a7f8db9a217c3b0d8c55fd9b0o.png)
uno es el principal donde en un panel los cargue para probar  y otra ventana hace lo mismo aunque creo que lo voy a dejar en el principal para no tener que crear esa ventana y luego tener que trabajar sobre ella ya que con la matriz tengo que hacer otras cosas entre esas cargar una imagen y pasarla en pixeles xD
espero consejos o ayudas ire a probar el ciclo para acomodar los jtextfield

 ;D