Delphi - ayuda

 
Vista:

ayuda

Publicado por luz denyy (1 intervención) el 24/06/2005 00:56:17
hola a todos los forista, soy nueva en esto y ncvesito ayuda...

tengo cuatro radiobuton y un boton necesito que cuando le de clic al boton vaya al primer radio buton
y a si hasta el cuarto y que cuando llegue ahi y le de nuevamente clic valla al primero...
ayudenme
gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:ayuda

Publicado por fabian (14 intervenciones) el 24/06/2005 04:45:26
que tal luz, lo unico que se me ocurrió fue esto:

var
i:integer;
begin
i:=0;
while not((RadioGroup1.Controls[i] as TRadioButton).Checked) do
i:= i+1;
case i of
0: (RadioGroup1.Controls[1] as TRadioButton).Checked:=true;
1: (RadioGroup1.Controls[2] as TRadioButton).Checked:=true;
2: (RadioGroup1.Controls[3] as TRadioButton).Checked:=true;
3: (RadioGroup1.Controls[0] as TRadioButton).Checked:=true;
end;
end;

es medio feito, pero es lo unico que se me ocurrio.. :(
Espero que te sirva de algo

Saludos
Fabian
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda

Publicado por BigLuis (713 intervenciones) el 24/06/2005 11:03:57
Fabian, no es critica pelada, es critica constructiva, asi es que no te lo tomes a mal.
En primer lugar estas mezclando controles diferentes TRadioGroup y TRadioButton. Supongo que a nadie se le ocurriria soltar un TRadioButton en un TRadioGroup ya que este ultimo contiene los "radiobuttons" que quieras editando la propiedad Items.
Ademas, estan igualando la variable I al principio del procedimiento a 0, por lo que cada vez que pulses su valor será 1 ya que a continuacion estableces la igualdad I=I+1. Por cierto es mas eficiente inc(I) si solo quieres aumentar de 1 en 1 o inc(I,7) si quieres aumentar de 7 en 7 etc.
Una pista, todos los controles tienen una propiedad Tag que utilizamos muy poco ya que parece muerta y no sabemos su potencial si lo sabemos utilizar adecuadamente, ya que es una propiedad que asignada en ejecucion permanece invariable hasta que la volvemos a modificar y se pueden hacer comprobaciones con su valor y otras operaciones.
Luz si quieres usar especialmente TRadioButton en vez de un TRadioGroup, puedes agruparlos en un TGroupBox y su comportamiento de exclusividad es el mismo
Suerte.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda

Publicado por Jesús (26 intervenciones) el 24/06/2005 09:09:52
Hola, puedes usar un Radigroup con 4 items, en el evento ButtonClick le pones el código Radiobutton1.itemindex:=0, esto lo puedes utlizar siempre y cuando los radiobuttons no sean independientes, es decir siempre que no pueda haber mas de un radiobutton marcado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda

Publicado por Delfino (1216 intervenciones) el 24/06/2005 12:51:20
Lo mejor es utilizar un RadioGroup con 4 items; en el click del boton:

if rg.ItemIndex = 3 then rg.ItemIndex := 0
else rg.ItemIndex := rg.ItemIndex + 1;

Sencillito no? asi es Delphi..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:ayuda

Publicado por fabian (14 intervenciones) el 24/06/2005 15:59:17
Gracias por la critica Bigluis, no estoy enojado, ya que como dijiste, es una critica constructiva y como tal, sirve para ayudarnos a no cometer el mismo error dos veces(aunque dicen que el hombre es el único animal que tropieza dos veces con la misma piedra).
Creo que la finalidad de este foro, es que todos aprendamos un poco más, despejemos nuestras dudas, y eliminemos todo error posible que pudieramos tener.

Un saludo

Fabian.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar