Comparar un String con el contenido de un Arreglo
Estimados
Buenas tardes, tengo un arreglo definido de la siguiente manera
En un combobox tengo opciones y obtengo en una variable de tipo string el valor del combobox.text Posteriormente mediante un for debo comparar lo que tiene el combobox.text con los datos del arreglo _arreglo, pero al intentar comparar los valores no lo encuentra dejo el codigo a ver si alguien me puede indicar donde esta el problema
Desde ya mucha gracias por su ayuda |
Alejandro73,
Cita:
El código anterior compara los elementos de un arreglo con los elementos de un TComboBox. Espero sea útil :) Nelson. |
Estimado
Gracias por responder, ya lo habia intentado de esa manera pero al momento de comparar no encuentra la igualdad, sera que el objeto que utilizo como combobox es un TbsSkinComboBox? Saludos |
El for debería iniciar en 1
Hola Alejandro73,
Creo que el problema es que el arreglo _arreglo inicia en 1 y el ciclo for lo estás iniciando en cero, es decir, el ciclo for esta revisando las posiciones 0 y 1 del arreglo y no las posiciones 1 y 2. De todas formas es extraño, aunque no encuentre coincidencias, que el código se pueda ejecutar sin que salte un error de indice fuera de rango. |
Alejandro73,
Cita:
1- El código sugerido en el Msg #2 funciona correctamente en Delphi 7 bajo Windows 7 Professional x32. 2- Al parecer el componente TbsSkinComboBox tiene las propiedades Text y ItemIndex, por lo cual es probable que funcione de forma similar al componente TComboBox de Delphi en lo que respecta a dichas propiedades. 3- Te sugiero hacer un debug del código y verificar el valor de todas las variables relacionadas al problema. Revisa estos links y verifica las propiedades utilizadas del componente: Cita:
Nelson. |
orodriguezca,
Cita:
Espero sea útil :) Nelson. |
Hola.
El código de nlsgarcia funciona correctamente. Y como utiliza las funciones Low y High lo haría del mismo modo fuera cual fuere el rango del índice declarado. Otro ejemplo similar: Si no encuentra un item, me inclino a pensar que los valores del arreglo difieren en algo de los del Combo, como por ejemplo un acento... Saludos :) |
Además de lo comentado ya...
(1) Ejecuta paso a paso para ver qué valen ambos valores en el momento de la comparación. Tal vez alguno incluya espacios o algo similar. (2) Para las comparaciones de texto, también puedes utilizar AnsiCompareText (evitar mayúsculas y minúsculas diferentes). |
La franja horaria es GMT +2. Ahora son las 15:44:40. |
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