Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Pedir al usuario Seleccionar un RadioButton (https://www.clubdelphi.com/foros/showthread.php?t=76548)

Lenny 08-11-2011 20:22:26

Pedir al usuario Seleccionar un RadioButton
 
Buenas y muchas gracias de antemano por cualquier ayuda.

Tengo 4 RadioButton, cada cual con una opcion diferente, necesito que al momento de guardar si no esta seleccionado ninguno salga un mensaje pidiendo seleccione uno de estos. Por ejemplo, con los DBEdit tengo algo asi:

Código Delphi [-]
 
begin
if DBEdit1.Text= '' then begin
  MessageBox(Handle, 
             PChar('"Debe ingresar al menos un valor"'), 
             PChar('Pruebas'),
             MB_OK + MB_ICONEXCLAMATION + MB_DEFBUTTON1 + MB_APPLMODAL);
abort
end else
..........
end;

Ojala algo similar o mejor... nuevamente muchas gracias de antemano...

Nuevamente, muchisimas gracias de antemano...

oscarac 08-11-2011 20:24:58

me parece que en los radiobutton el valor -1 significa que no esta seleccionado

entoces podrias hacer preguntas

Pseudocodigo
Código Delphi [-]
 
if rbutton1.itemindex = -1 Then  Message('Boton 1 no esta seleccionado')

Lenny 09-11-2011 16:56:10

Gracias oscarac, pero no es realmente lo que necesito, como les decia tengo 4 RadioButton y necesito saber que al menos uno esta seleccionado para poder seguir con el formulario, los RadioButton estan todos en
Código Delphi [-]
Checked:= False
al iniciar el formulario en si (y debe ser de esta manera)... muchas gracias de antemano...

newtron 09-11-2011 16:59:51

¿Y si preguntas por el valor de los cuatro radiobuttons?

Código Delphi [-]
If (RadioButton1.Checked=False) and (RadioButton2.Checked=False) and (RadioButton3.Checked=False) and (RadioButton4.Checked=False) then begin
  ShowMessage('No se puede continuar');
end;

oscarac 09-11-2011 17:01:38

perdoname
pense que lo tenias en un radiogroup....

se me ocurre que podrias preguntar...

Código Delphi [-]
 
if (Rb1.checked = False) and (Rb2.checked = False) and (Rb3.checked = False) and (Rb4.checked = False) Then message('No selecciono ninguno')

Lenny 09-11-2011 17:03:48

Solucionado...
 
Muchas gracias newtron y oscarac... acabo de probar lo que dice newtron y funciona perfecto!!! muchas gracias nuevamente...

javier7ar 10-11-2011 18:52:46

Cita:

Empezado por oscarac (Mensaje 418005)
Código Delphi [-]
if (Rb1.checked = False)...

eso es tenerle miedo al Boolean, diria un profesor mio... :D
basta con
Código Delphi [-]
if not(Rb1.checked)...

o para el caso:
Código Delphi [-]
if (Rb1.checked = True)...
bastaria con
Código Delphi [-]
if (Rb1.checked)...

Saludos

oscarac 10-11-2011 18:59:37

gustos y colores decia mi abuela :D:D

Delphius 11-11-2011 04:49:34

Cita:

Empezado por oscarac (Mensaje 418133)
gustos y colores decia mi abuela :D:D

Que ni gusto ni colores... ¡Es un "error" garrafal clásico! :p Y muy visto en los iniciados... yo cometía esa redundancia lógica por año y medio. ¡Lo que me costó sacármelo de encima! :eek:

Saludos,

ecfisa 11-11-2011 05:40:01

Y que aplicando las leyes del ingenioso y nunca bién ponderado Augustus se reduce a:
Código Delphi [-]
if not(rb1.Checked or rb2.Checked or rb3.Checked or rb4.Checked) then
    ShowMessage('Ninguno seleccionado');

Un saludo. :)

Delphius 11-11-2011 06:05:21

Cita:

Empezado por ecfisa (Mensaje 418213)
Y que aplicando las leyes del ingenioso y nunca bién ponderado Augustus se reduce a:
Código Delphi [-]
if not(rb1.Checked or rb2.Checked or rb3.Checked or rb4.Checked) then
    ShowMessage('Ninguno seleccionado');

Un saludo. :)

Son las 2 am y mi cabeza está prácticamente apagada... ¿Quién es Augustus? O es que no logré captar una broma de un tipo cualquiera inventado. :p

Saludos,

ecfisa 11-11-2011 06:32:01

Cita:

Son las 2 am y mi cabeza está prácticamente apagada...
En cambio yo, hoy tuve la dicha de desquitarme hasta las 11 y monedas. :p:D

Cita:

O es que no logré captar una broma de un tipo cualquiera inventado
No, no es broma. Hablaba de Augustus De Morgan.

Un saludo :)

Delphius 11-11-2011 14:32:44

Cita:

Empezado por ecfisa (Mensaje 418216)
En cambio yo, hoy tuve la dicha de desquitarme hasta las 11 y monedas. :p:D

No jodas... ¿Entonces cómo es que lograste tirar código si ya estabas fulminado? ¡Cómo serás en todas tus luces! :eek: :D


Cita:

Empezado por ecfisa (Mensaje 418216)
No, no es broma. Hablaba de Augustus De Morgan.

Un saludo :)

Jajaja. Anoche me quedé un ratito buscando a tal Augustus y solamente me quedé con dos personas, a De Morgan y a su pupila Ada Lovelace, o más precisamente a Lady Ada Augusta Byron King, condesa de Lovelace.
El asunto es que no lograba prender un foco anoche que sea capaz de reconocer a De Morgan por su nombre, y me sentía más perdido que un pez en el Sahara... y no me podía quedar con la intriga.

Saludos,

ecfisa 11-11-2011 15:00:51

Cita:

¿Entonces cómo es que lograste tirar código si ya estabas fulminado?
No me explique bien jeje, resulta que el día anterior no dormí por entregar un trabajo. Pero por esa misma razón, recién me había levantado de una 'siestita' santiagueña hasta las 23:15!! :D:D
Así que a las 2 andaba bién fresquito... :D

Un saludo. :)

Delphius 11-11-2011 15:27:35

Cita:

Empezado por ecfisa (Mensaje 418246)
No me explique bien jeje, resulta que el día anterior no dormí por entregar un trabajo. Pero por esa misma razón, recién me había levantado de una 'siestita' santiagueña hasta las 23:15!! :D:D
Así que a las 2 andaba bién fresquito... :D

Un saludo. :)

¡Acabáramos! Ja... una siesta santiagueña. Y uno aquí durmiendo máximo 4 o 5 horas, exprimiendo cabezota desde las 7am sin siquiera desayunar y apenas unos minutos para un almuerzo rápido a las 13 y el señorcito muy pancho descansando con un ventilador o aire acondicionado seguro.
¡Cómo desearía tener una siestita de esas! :D

Bueno volviendo al hilo...

Ahora que releo:
Cita:

Empezado por Lenny (Mensaje 418001)
Gracias oscarac, pero no es realmente lo que necesito, como les decia tengo 4 RadioButton y necesito saber que al menos uno esta seleccionado para poder seguir con el formulario, los RadioButton estan todos en
Código Delphi [-]
Checked:= False
al iniciar el formulario en si (y debe ser de esta manera)... muchas gracias de antemano...

¿No será que se está utilizando el componente equivocado? Por que si la idea es seleccionar "por lo menos" uno eso no a ser posible con un RadioButton, para eso está justamente el TCheckListBox. Ya sea que se utilice TRadioButton o un TRadioGroup estos sólo permiten seleccionar uno, ni más ni menos.

Saludos,

newtron 11-11-2011 17:35:15

Cita:

Empezado por Delphius (Mensaje 418248)
¿No será que se está utilizando el componente equivocado? Por que si la idea es seleccionar "por lo menos" uno eso no a ser posible con un RadioButton, para eso está justamente el TCheckListBox. Ya sea que se utilice TRadioButton o un TRadioGroup estos sólo permiten seleccionar uno, ni más ni menos.

Saludos,

Pero si por defecto no hay ninguno seleccionado se lo puede saltar, ¿no?

Delphius 11-11-2011 19:22:34

Cita:

Empezado por newtron (Mensaje 418261)
Pero si por defecto no hay ninguno seleccionado se lo puede saltar, ¿no?

Y... si, pero también pasa en un TRadioButton o TRadioGroup también ;)

De todas formas debe controlarse esto. A lo que voy es que si en realidad es un "por lo menos", debe emplearse otro enfoque porque con los TRadioxxx sólo una opción queda marcada, mientras que con el TCheckListBox se puede marcar desde una a todas. Y eso es justamente lo que significa "por lo menos": >= 1.

Saludos,

Al González 11-11-2011 19:47:01

Cita:

Empezado por Delphius (Mensaje 418248)
Y uno aquí durmiendo máximo 4 o 5 horas, exprimiendo cabezota desde las 7am sin siquiera desayunar y apenas unos minutos para un almuerzo rápido a las 13 [...]

Dedica tiempo a cada cosa mi amigo Marcelo, en especial a las que más importan (entre ellas comer y dormir). Así el resto será más fácil de lograr y todo cansancio vendrá acompañado de satisfacción. :)

Delphius 11-11-2011 23:57:43

Cita:

Empezado por Al González (Mensaje 418273)
Dedica tiempo a cada cosa mi amigo Marcelo, en especial a las que más importan (entre ellas comer y dormir). Así el resto será más fácil de lograr y todo cansancio vendrá acompañado de satisfacción. :)

Uff... si le sigo dando la importancia a la comida me voy para arriba de los 75kg :D y en teoría según tablas de peso-altura yo no debería superar los 66-68 :eek: . Ahorita estoy en los 72,2. :o
Había hecho una dieta y venía bien... pero luego no bajaba más por más que me esforzaba, y me había quedado en lo 70. Ahora empecé a subir de nuevo... con estos días de veranito que estamos teniendo no vendría mal ir a caminar o andar bici... el punto es que hay demasiada hueva como dicen ustedes :D y no hay modo de inspirar ganas... Si al menos algun espécimen de curvus bonitus se ofreciera ir adelante para guiarme :rolleyes:

¿Dormir? Si duermo, nomás que en las últimas semanas si le estuve dando poco tiempo. Yo no rindo bien si duermo menos de las 8hs como se debe, pero me forcé a acostumbrarme a esas pocas horas por mis proyectos... y dentro de todo me ha resultado. Pero llegado a estos últimos días lo estoy pagando en caro :( .
De lo que si me tengo que empezar a cuidar de nuevo es con el café. Esa bebida que me tuvo mal traer hace 5 años y me llevó a trastorno de sueño ¡hasta 3 tazotas por día había llegado!. Costó quitarme ese vicio, y ya practicamente no consumo café... hasta el punto en que no soporto el gusto al café puro. Pero en los últimos días me tuve que obligar a tomar café con leche, una taza diaria.

Te agradezco la preocupación, y lo mismo digo: cuídate.

Saludos,

Lenny 14-11-2011 02:00:37

y yo que preguntaba solo por un RadioButton :p, muchas gracias a todos, y corrijo:

Todos los RadioButton estan en Chequed:= False; y lo que necesitaba es que me avisara que no hay ninguno seleccionado, de ser asi (Todos en False) dar un aviso, si hay alguno seleccionado continuar... (omito "al menos uno" aunque era solo una cuestion de interpretacion, pero mejor preguntar bien a caer en ambiguedades)

De todos modos, con todas las opciones y soluciones que me dieron me entretuve harto y aprendi mucho, de un problema sencillo, como dice oscarac: "gustos y colores decia mi abuela" (que me a ayudado mucho en varias de mis preguntas de novato) he estado revisamdo todos los comentarios y nuevamente gracias, siempre hay mas de una forma de hacer las cosas, pero si ademas ak nos ayudan y enseñan a hacerlas bien y entre todos ¿que mas podria pedir?, me alegra ser parte de esta comunidad, aunque doy mas problemas que soluciones... jajajaja... nuevamente gracias a todos y espero tener vuestro nivel para poder ayudar a quienes como yo, aun estamos usando pañales en Delphi.


La franja horaria es GMT +2. Ahora son las 16:01:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi