import java.util.*;
import java.awt.*;
import javax.swing.*;
import java.awt.event.*;
public class Ahorcado extends JFrame{
private JTextField palabra;
private JButton botones[] = new JButton[27] , nuevo;
private String qwerty = "qwertyuiop" , asdfg = "asdfghjklñ" , zxcv = "zxcvbnm" , auxiliar1 , auxiliar2 , letra;
private String animales[] = { "jirafa" , "ballena" , "rinoceronte" , "gorila" , "aguila" , "murcielago" , "avestruz" , "reno" , "mapache" , "capibara" , "ormitorrinco" };
private JLabel etiquetas[] = new JLabel[6];
private ImageIcon imagenes[] = new ImageIcon[6];
int j;
Ahorcado( )
{
setTitle( "Juego del ahorcado" );
setSize( 930 , 700 );
setResizable( false );
iniciar( );
accionar( );
getRootPane( ).setDefaultButton( nuevo );
}
private void iniciar( )
{
getContentPane( ).setLayout( null );
imagenes[0] = new ImageIcon( "BlackCat.jpg" );
etiquetas[0] = new JLabel( imagenes[0] );
etiquetas[0].setBounds( 20 , 30 , 320 , 480 );
getContentPane( ).add( etiquetas[0] );
palabra = new JTextField( "" );
palabra.setFont( new Font( "Arial" , 1 , 50 ) );
palabra.setHorizontalAlignment( SwingConstants.CENTER );
palabra.setToolTipText( "Adivina la palabra" );
palabra.setBounds( 20 , 300 , 880 , 70 );
palabra.setText( "" );
palabra.setEditable( false );
getContentPane( ).add( palabra );
nuevo = new JButton( "" );
nuevo.setFont( new Font( "Arial" , 1 , 25 ) );
nuevo.setToolTipText( "Presiona aquí para adivinar otra palabra" );
nuevo.setText( "Nuevo juego" );
nuevo.setBounds( 650 , 570 , 250 , 70 );
getContentPane( ).add( nuevo );
int x = 20 , y = 400;
String teclado = qwerty + asdfg + zxcv;
for( int i = 0 ; i < 27 ; i++ )
{
botones[i] = new JButton( "" );
botones[i].setFont( new Font( "Arial" , 1 , 25 ) );
botones[i].setToolTipText( "Introduce la letra " + Character.toString( teclado.charAt( i ) ) );
botones[i].setBounds( x , y , 70 , 70);
x += 90;
if( i == qwerty.length( ) - 1 )
{
y += 85;
x = 20;
}
else if( i == qwerty.length( ) + asdfg.length( ) - 1 )
{
y += 85;
x = 20;
}
getContentPane( ).add( botones[i] );
}
for( int i = 0; i < teclado.length( ) ; i++ )
botones[i].setText( Character.toString( teclado.charAt( i ) ) );
}
private void accionar( )
{
String teclado = qwerty + asdfg + zxcv;
for( int i = 0 ; i < teclado.length( ) ; i++ )
{
botones[i].addActionListener( new ActionListener( ) {
public void actionPerformed( ActionEvent evt ){
/*letra = botones[j++].getText( );*/
adivinarAction( evt );
} } );
}
nuevo.addActionListener( new ActionListener( ) {
public void actionPerformed( ActionEvent evt ){
jugarAction( evt ); } } );
}
private void adivinarAction( ActionEvent e )
{
palabra.setText( letra );
}
private void jugarAction( ActionEvent e )
{
Random rndm = new Random( );
auxiliar1 = animales[ rndm.nextInt( 11 ) ];
auxiliar2 = "";
for( int i = 0 ; i < auxiliar1.length( ) ; i++ )
auxiliar2 += "-";
palabra.setText( auxiliar2 );
}
public static void main( String args[] ){
try
{
UIManager.setLookAndFeel(
UIManager.getSystemLookAndFeelClassName( ) );}
catch( Exception e )
{
System.out.print( "No se puede continuar" + e );
}
Ahorcado objeto = new Ahorcado( );
objeto.setVisible( true );
}
}