Código Java:
Ver original
package sopaletrasv3; import java.awt.Color; import java.awt.FlowLayout; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBox; import javax.swing.JDialog; import javax.swing.JLabel; import javax.swing.JOptionPane; import javax.swing.JPanel; import javax.swing.JTextField; import javax.swing.JRadioButton; /** * * @author portatil */ private Sopaletras2 sopa; private int posX,posY,forma; private JRadioButton BotonOpcion1,BotonOpcion2,BotonOpcion3,BotonOpcion4,BotonOpcion5,BotonOpcion6,BotonOpcion7,BotonOpcion8; private boolean booResalta; //private Color color; public frmInsertaPalabra(Sopaletras2 xsopa, int i, int j, boolean bool){ super(); sopa = xsopa; posX = i; posY = j; forma = 1; booResalta = bool; //color = xcolor; Ini(); this.setTitle("Insertar Palabra"); //Titulo de ventana this.setSize(410,325); //Tamaño de ventana this.setModal(true); //Establece ventana modal } public void Ini(){ jcbChars.setSelected(true); jcbChars.setFocusable(false); texto.addKeyListener(this); BotonOpcion1.setSelected(true); BotonOpcion1.setFocusable(false); BotonOpcion1.addActionListener(this); BotonOpcion2.addActionListener(this); BotonOpcion2.setFocusable(false); BotonOpcion3.addActionListener(this); BotonOpcion3.setFocusable(false); BotonOpcion4.addActionListener(this); BotonOpcion4.setFocusable(false); BotonOpcion5.addActionListener(this); BotonOpcion5.setFocusable(false); BotonOpcion6.addActionListener(this); BotonOpcion6.setFocusable(false); BotonOpcion7.addActionListener(this); BotonOpcion7.setFocusable(false); BotonOpcion8.addActionListener(this); BotonOpcion8.setFocusable(false); AgrupaBoton.add(BotonOpcion1); AgrupaBoton.add(BotonOpcion2); AgrupaBoton.add(BotonOpcion3); AgrupaBoton.add(BotonOpcion4); AgrupaBoton.add(BotonOpcion5); AgrupaBoton.add(BotonOpcion6); AgrupaBoton.add(BotonOpcion7); AgrupaBoton.add(BotonOpcion8); pane.add(BotonOpcion1); pane.add(BotonOpcion2); pane.add(BotonOpcion3); pane.add(BotonOpcion4); pane3.add(BotonOpcion5); pane3.add(BotonOpcion6); pane4.add(BotonOpcion7); pane4.add(BotonOpcion8); JBSalir.addActionListener(this); JBAceptar.addActionListener(this); pane2.add(JBSalir); pane2.add(JBAceptar); panePrincipal.add(label); panePrincipal.add(texto); panePrincipal.add(label3); panePrincipal.add(jcbChars); panePrincipal.add(label2); panePrincipal.add(pane); panePrincipal.add(pane3); panePrincipal.add(pane4); panePrincipal.add(pane2); this.add(panePrincipal); } char c[],x; int i,j,k; int error = 0; c = s.toCharArray(); for( i=0 ; i < cadena.length() && error == 0;i++){ x = cadena.charAt(i); k = 0; for(j = 0 ; j < s.length() && k == 0;j++){ if(x==c[j]) k++; } if( k == 0) error++; } if(error == 0) return true; else return false; } public void AgregarPalabra(){ if(s.length()> 0){ int num = sopa.Verify(s, posX, posY, forma); if(num == 0){ if(jcbChars.isSelected()){ if(verifyString(s,sopa.getCaracteresPermitidos())){ sopa.setPalabra(s, posX, posY, forma); if(booResalta) this.dispose(); }else JOptionPane.showMessageDialog(rootPane, "Palabra no agregada. La palabra contiene letras que no forman parte de la sopa de letras. Tambien se distingue entre mayusculas y minusculas.", "jSopaLetras" , 1); }else{ sopa.setPalabra(s, posX, posY, forma); if(booResalta) this.dispose(); } }else if (num == 1) JOptionPane.showMessageDialog(rootPane, "Palabra muy extensa para ser colocada", "jSopaLetras" , 1); else if(num == 2) JOptionPane.showMessageDialog(rootPane, "Palabra se cruza con otra ya agregada anteriormente", "jSopaLetras" , 1); }else } if(obj == JBSalir){ this.dispose(); }else if(obj == BotonOpcion1){ forma = 1; }else if(obj == BotonOpcion2){ forma = 2; }else if (obj == BotonOpcion3){ forma = 3; }else if(obj == BotonOpcion4){ forma = 4; }else if(obj == BotonOpcion5){ forma = 5; }else if(obj == BotonOpcion6){ forma = 6; }else if(obj == BotonOpcion7){ forma = 7; }else if(obj == BotonOpcion8){ forma = 8; }else if(obj == JBAceptar){ AgregarPalabra(); } } //throw new UnsupportedOperationException("Not supported yet."); } if(e.getKeyChar() == '\n') AgregarPalabra(); if(e.getKeyCode() == 27) this.dispose(); //this.setTitle("" + this.getWidth() + " * " + this.getHeight()); //this.setTitle("KeyCode = " + e.getKeyCode()); } // new UnsupportedOperationException("Not supported yet."); } }