๐Ÿš€ go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.lenguajes.java
Article #28795

Re: botones

#28795
From: Pablo Lanza
Date: Sat, 14 Mar 1998 00:00
78 lines
2628 bytes
Hola


>Juan Antonio escribi๏ฟฝ:
>
>> hola, necesito un poco de ayuda, vereis tengo un applet que tiene una
>> serie de botones (concretamente 12) que tienen como etiqueta "SI" o "NO"
>> entonces mi intencion es que cuando el usuario clicke en uno de estos
>> dos botones si el contenido es SI cambie a NO y si el contenido es NO
>> cambie a si, pero lo que no quiero hacer es comprobar todos los botones
>> uno a uno, no se si me explico no quiero hacer algo asi como:
>>
>>         if (e.target == boton1)  {
>>                 if (boton1.getLabel().equals("SI"))
>> boton1.setLabel("NO");
>>                         else boton1.setLabel("SI");
>>        }
>>
>>     y asi sucesivamente hasta llegar a 12, es decir lo unico que quiero
>> es comprobar que el objeto sobre
>> el que se ha producido el evento es un boton y cambiar el string, no me
>> importa que boton es, lo unico qeu me importa es su string y como
>> cambiarlo, he probado a hacer losiguiente pero creo que es una metedura
>> de pata pq no funciona:
>>
>> public boolean action(Event e,Object o) {
>>     Button b;
>>     if (o instanceof Button) {
>>     b=(Button)o;
>>      if(b.getLabel().equals("SI")) b.setLabel("NO");
>>       else b.setLabel("SI");
>>             return true;
>>      }
>>
>>      return false;
>>    }
>>
>> Bueno, gracias por adelantado...


Puedes ayudarte de la clase Vector para hacer lo que propones, nada
como un poco de codigo....


import java.util.*;
import java.applet.*;
import java.awt.*;

public class botones extends Applet
{
Button b[]=new Button[12];
Vector v=new Vector();

        public void init()
        {
        for(int i=0;i<=11;i++)
           {
           b[i]=new Button("SI");
           v.addElement(b[i]);
           add(b[i]);
           }
        }


        public boolean action(Event evt,Object obj)
        {
        if(v.contains(evt.target))
          {
          String s=(obj.toString().equals("SI") ? "NO":"SI");
          b[v.indexOf(evt.target)].setLabel(s);
          }
        return(true);
        }
}


Un saludo.
Technical Details
Message-ID: <350bc63a.524597@diana.ibernet.es>
Path: arc1-ca.pugleaf.net!unknown!not-for-mail
References: <35095E90.E897D4ED@proton.uab.es>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: 1116f3,2e6dc61df751813c
X-Google-Attributes: gid1116f3,public
From: planza@netaldea.es (Pablo Lanza)
Subject: Re: botones
Date: 1998/03/14
Message-ID: <350bc63a.524597@diana.ibernet.es>
X-Deja-AN: 334048191
Content-Transfer-Encoding: 8bit
References: <35095E90.E897D4ED@proton.uab.es>
Content-Type: text/plain; charset=ISO-8859-1
Organization: Unisource Espana NEWS SERVER
Mime-Version: 1.0
Newsgroups: es.comp.lenguajes.java