FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
uso CheckBox con 3 opciones
Mi formulario
ver imagen al marca una casilla muestre en el label el resultado al darle click en el boton opcion 1 opcion 2 opcion 3 ejemplo: se marca una casilla: "opcion 1" se marca dos casilla y dira en el label: "opcion 1 , opcion 2" se marca tres casillas: "opcion 1 , opcion 2 , opcion 3" es eso este codigo es un boceto Código:
procedure TForm1.Button1Click(Sender: TObject); begin if CheckBox1.Checked and CheckBox2.Checked Label1.Caption := 'opcion 1' , 'opcion 2' if CheckBox1.Checked or CheckBox2.Checked Label1.Caption := 'opcion 1' end; Última edición por arespremium fecha: 25-08-2007 a las 03:28:39. |
#2
|
||||
|
||||
puedes definir una variable paso
vPaso : String; vPaso := ' '; if Opcion1.Cheked= True Then vPaso := Concat(vPaso,' Opcion1 '); if Opcion2.Cheked= True Then vPaso := Concat(vPaso,' Opcion2 '); if Opcion3.Cheked= True Then vPaso := Concat(vPaso,' Opcion3 '); label1.caption := vPaso; puede k tenga algun error... pero lo hice de memoria
__________________
BlueSteel |
#3
|
|||
|
|||
Una Respuesta no muy Buena
Pues mira Arespremium, lo que yo te puedo recomendar sin saber mucho y con mucho codigo, sería esto:
Hacer un if para todos los caso: if((opcion1.cheked=true) AND (opcion2.cheked=true) AND (opcion3.cheked=true)) then label1.caption:= 'opcion1, opcion2 y opcion3'; Y asi para todos pero como te digo es mucho codigo.
__________________
La inteligencia me persigue, pero yo soy más rápido que ella. |
#4
|
|||
|
|||
Haber que te parece esto:
Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney |
#5
|
|||
|
|||
[quote=BlueSteel;226030]puedes definir una variable paso
vPaso : String; vPaso := ' '; if Opcion1.Cheked= True Then vPaso := Concat(vPaso,' Opcion1 '); if Opcion2.Cheked= True Then vPaso := Concat(vPaso,' Opcion2 '); if Opcion3.Cheked= True Then vPaso := Concat(vPaso,' Opcion3 '); label1.caption := vPaso; Creo que va mejor como dice nuestro companero Blue Steel otra opcion seria usar los If anidados Ej: vPaso : String; vPaso := ' '; if Opcion1.Cheked Then vPaso :=Opcion1 Else if Opcion2.Cheked Then vPaso := vPaso+Opcion2 Else if Opcion3.Cheked Then vPaso+Opcion3; label1.caption := vPaso; |
#6
|
||||
|
||||
En realidad, la opción que muestra egostar es la más certera. Ofrece un mejor dinamismo y una mayor comprensión. La lógica está correctamente distribuída y no concentrada en un solo punto. Y si observan bien el código de egostar, a pesar de ser simple, puede ser mejorado. Hay un denominador común en el código y puede aprovecharse los "eventos compartidos" para reducirlo.
Saludos, |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Opciones en Paradox | CARSOFT_AR | Tablas planas | 1 | 24-06-2005 21:01:25 |
Opciones en Componente | diegofhernando | OOP | 1 | 29-06-2004 15:39:09 |
Opciones de Parent | pepelu1975 | OOP | 7 | 26-05-2004 18:35:36 |
Opciones de impresion en QReport | pablo | Impresión | 1 | 11-05-2004 02:56:13 |
|