Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 30-08-2005
Brewster Brewster is offline
Miembro
 
Registrado: abr 2004
Posts: 56
Poder: 21
Brewster Va por buen camino
Intraweb: obtener el valor de un combobox

Hola a todos.-

Esta pregunta es bien sencilla pero no veo manera de que me salga.

Quiero extraer el valor que se ha seleccionado de un combobox. Hago lo siguiente.-

valor:= comboboxPrincipal.Items.ValueFromIndex[comboboxPrincipal.ItemIndex];

Pero me devuelve siempre una cadena vacia.

Creo que el problema puede residir en que el valor comboboxPrincipal.itemIdex me da siempre el valor -1.

Gracias por adelantado.
Responder Con Cita
  #2  
Antiguo 30-08-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Yo creí que usar comboboxPrincipal.Items[comboboxprincipal.ItemIndex] te regresaba el valor en forma de string.. O simplemente comboboxPrincipal.Text

si itemindex=-1 entonces no se ha seleccionado nada.


Nunca había visto ValueFromIndex, que revisando la ayuda de delphi te regresa un WideString.
(sin mecionar que no encontre valuefromindex para un combobox)


¿cuál es el objetivo de usa ValueFromIndex?
__________________


Última edición por ContraVeneno fecha: 30-08-2005 a las 20:43:33.
Responder Con Cita
  #3  
Antiguo 31-08-2005
Brewster Brewster is offline
Miembro
 
Registrado: abr 2004
Posts: 56
Poder: 21
Brewster Va por buen camino
Ahi está el problema, que itemIndex es siempre -1, pero en el combobox se selecciona siempre algo, he probado rellenar el combobox al crear el formulario en vez de por defecto, pero nada.

Siempre que se elige algun item del comboxbox tiene el valor -1.

El código es bien sencillo pero por más vueltas que le doy no veo el error.
Responder Con Cita
  #4  
Antiguo 31-08-2005
Avatar de dec
dec dec is offline
Moderador
 
Registrado: dic 2004
Ubicación: Alcobendas, Madrid, España
Posts: 13.107
Poder: 34
dec Tiene un aura espectaculardec Tiene un aura espectacular
Hola,

Lo que ocurre es que la propiedad "ValueFromIndex" :

Cita:
Empezado por Ayuda de Delphi
Represents the value part of a string with a given index, on strings that are name-value pairs.
Esto es, que, probablemente no necesitas utilizar esa propiedad, pero la propia "Items", junto con "ItemIndex" para averiguar qué elemento se seleccionó en el "TComboBox", tal que así:

Código Delphi [-]
 var
   i: integer;
 begin
   i := cbEjemplo.ItemIndex;
   if i <> -1 then
     ShowMessage(cbEjemplo.Items[i]);
 end;
Si haces pruebas verás que, efectivamente, a la que se seleccione un elemento del "TComboBox" su propiedad "ItemIndex" dejará de ser "-1", pues, como dice ContraVeneno si fuera así se estaría indicando que no hay ningún elemento seleccionado en el "TComboBox".

Revisa en la ayuda de delphi el resto de la descripción y forma de uso de la propiedad "ValueFromIndex" y prueba accediendo a los elementos como se hace arriba, mediante su propiedad "Items", sencillamente.
__________________
David Esperalta
www.decsoftutils.com
Responder Con Cita
  #5  
Antiguo 31-08-2005
Avatar de ContraVeneno
ContraVeneno ContraVeneno is offline
Miembro
 
Registrado: may 2005
Ubicación: Torreón, México
Posts: 4.738
Poder: 23
ContraVeneno Va por buen camino
Es que no hay otra opción, si itemindex=-1 entonces no tiene nada seleccionado, es así de simple.
Podrías revisar tu código en la parte donde se selecciona un item y comprobar que realmente se seleccione; esto para descubrir porque diantres el itemindex siempre es -1.
__________________

Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 01:09:23.


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
Copyright 1996-2007 Club Delphi