![]() |
Simular dos radiobuttons con Checkbox
Necesito simular el efecto de seleccion unica que poseen los radiobutton con un par de checkbox (Ch1 y Ch2), y no consigo que funcionen :confused::
Desde ya muchas gracias por vuestra ayuda... Un abrazo... TriloCba |
Intenta así:
// Saludos |
Vamos a ver que te parece esta solución. Usamos un solo evento OnClick para los dos checkbox, y dento colocamos esto:
PD: ¿Porque no usas radiobuttons? si quieres tener la opción de no marcar ninguno, siempre puedes añadir otro radiobutton con el caption "Ninguno de las anteriores" :) |
Cita:
// Saludos |
Honor a quien honor merece, Roman, eres un maestro.
Me pongo de pie. Saludos. |
Cita:
|
Bueno, es que yo no sé si es una cuestión estética. Es sólo que en el código que él intentó, explícitamente pone en true el checkbox que llama. Por eso supuse que no quería dejar que se desmarcara.
Ahora, tratando de encontrar un código compacto como el de seoane, lo más que me acerco es a esto:
usando un sólo evento para ambos. // Saludos |
Si hablamos de hacerlo chiquito o compacto :D:D
Saludos |
Pero así tiene un efecto extraño: cuando haces click sobre el que está marcado, la marca pasa al otro.
// Saludos |
Saludos
Cita:
Cita:
|
Ooh ya, se me ha chispoteado el asunto, tienes razón roman
|
El punto es que cuando se cambia la propiedad checked por código, se genera un evento OnClick y una recursividad que da al traste con el stack. Por ello es que no he visto forma de hacerlo como no sea controlando de una u otra manera cuando se está dentro del evento.
// Saludos |
En su momento tambien me desconcertó ese funcionamiento, así que derivé de Tcheckbox y me creé el mio propio:
Cuando no se quiere que desencadene el evento OnClick por código, se usa SetChecked. Cuando se necesita el comportamiento normal, se usa como siempre. Saludos |
Muy buenas respuestas... pero sigue faltando una que no entiendo, y que el único que puede responder es el autor de este hilo:
¿porqué no quieres usar RadioButtons? |
Muchas gracias a todos por vuestras rapidas respuestas...!!!
Me pone orgulloso que un tema tan modesto haya juntado a los grandes del foro !!!:D Para despejar dudas, la utilizacion de los checkbox en lugar de radiobutton responde a dos situaciones: 1ra. Forman parte de un form que tiene como fondo una imagen especifica sobre la cual no puedo poner ningun componente como el Tpanel ó el TRadioGroup que no traiga la propiedad Transparent; y en el mismo formulario ya poseeo una serie de RadioButtons para otra función. y 2da., aunque menos importante, me agradan visualmente mas los checkboxs sobre los radiobuttons. Probare los ejemplos enviados, y de nuevo muchas gracias. Un abrazo. |
Cita:
Saludos |
En qué delphi lo has probado vtdeleon?
En Delphi 6 Enterprise lo he usado con éxito. Como ves los de Borland ya pensaron en ello y precisamente por eso tienen una variabla protected/private (no recuerdo) llamada ClickDisabled. Ahora mismo en Delphi 6 no puedo mirarlo. En BDS2006 la cosa ha cambiado: Ahora es el procedimiento SetState. Saludos |
Cita:
Ahora no lo puedo probar, no tengo el delphi a mano. Saludos |
Perfecto... El primer codigo que planteo Roman es lo que necesitaba !!!:)
Muchas gracias a todos por la ayuda... Un abrazo. TriloCba |
La franja horaria es GMT +2. Ahora son las 05:24:54. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi