Declaracion If --- Then
Hola a todos
Bueno aqui molestando, tengo una pequeña consulta. Tengo esto: Las dos sentencias son iguales, Sumar y Restar, pero quiero saber si se puedo hacer algo como esto, de alguna forma? Asi por supuesto no me funciona, como podria hacerlo ? Saludos y gracias de antemano |
Solo cambia tu if
intenta lo siguiente
if (ComboBox3.Text = 'Sumar') or (ComboBox3.Text = 'Restar') Then |
En realidad el programa lo tengo actualmente asi y es peor, es repetitivo,
son 20 edit. Y no puse las multiplicaciones y divisiones, si no seria mas codigo repetido. Como simplifico esto ? Saludos |
Prueba asi:
|
Buenas,
Si pruebas con lo siguiente te quedará más claro el código y más reducido: case combobox3.text of 'n' = {sentencias} 'ppp' = {sentencias} else {sentencias} end; Un saludo |
Que es lo que tienes que hacer?
por que no dices mejor que quieres hacer, se me hace que tienes mucho codigo repetido que se pudiera simplificar
|
Gracias pero si os fijais no sirve solo asi por esta parte:
en el caso de la suma: en el caso de la resta: En mi segundo mensaje puse parte del codigo, como lo tengo, son 20 edit, fijaros que el signo cambia o + o -, dependiendo de la operacion. Saludos |
Cita:
|
Se que hay un problema de repeticion, ya pense en variables, incluso en un array, (pero no lo manejo muy bien), la verdad el sistema funciona solo que quiero simplificarlo.
Saludos |
Algo que podrías hacer con el TComboBox, es usar la propiedad ItemIndex:
Saludos... |
Muchas gracias a todos
Hare una mezcla de todo un poco. Saludos |
Creo que dandole un poco mas de vuelta a la tuerca, el codigo podria ser el mismo en los dos casos (sumar o restar), si añades una condicion y un valor al principio, por ejemplo:
50 + (10 * 1) = 60 50 + (10 * -1) = 40 Salu2. |
Caral, si funciona no lo toques, así de simple.
Si quieres optimizarlo, tocaría rehacer todo. Saber qué estas haciendo y buscar alternativas. Yo no cambiaría los textos por Itemindex como han propuesto, es un lio total.... "Seleccionado el ItemIndex 3 y eso ¿era sumar o restar?, en el código tengo puesto un comentario diciendo que es sumar, pero el comentario está equivocado porque copié y pegué......" El caso es que no entiendo nada de nada.....
Según está ese código, si Edit7 tiene algo distinto al Edit8, las lineas a ejecutar son:
Es decir, se queda con el color rojo y diciendo "OK", porque no hay bloques begin ... end dentro de los "if" y por tatnto, si un "if" se cumple, solo ejecuta la siguiente sentencia que haya (aunque con el identado que haces quieras decir otra cosa). Creo que lo correcto sería:
|
La franja horaria es GMT +2. Ahora son las 00:28:10. |
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