Este foro usa cookies
Este foro utiliza cookies para almacenar su información de inicio de sesión si está registrado y su última visita si no lo está. Las cookies son pequeños documentos de texto almacenados en su computadora; las cookies establecidas por este foro solo se pueden usar en este sitio web y no representan ningún riesgo de seguridad. Las cookies en este foro también rastrean los temas específicos que ha leído y la última vez que los leyó. Si Ud. continúa navegando, entenderemos que acepta todas las cookies.

Se almacenará una cookie en su navegador, independientemente de la elección, para evitar que se le vuelva a hacer esta pregunta. Podrá cambiar la configuración de sus cookies en cualquier momento utilizando el enlace en el pie de página.

El foro antiguo se encuentra accesible desde https://foro.gambas-es.org en modo de solo lectura.

Calificación:
  • 0 voto(s) - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5

Esconder texto de una fila de un ComboBox o ListBox
#1

Hola,

Alguien se le ocurre la manera de esconder parte del texto de cada fila de un ComboBox o un ListBox, pero, ojo, debe poderse esconder algo que uno quiera por ejemplo:

Filas:
Esconder el ID
1 Fútbol
2 Baloncesto
3 Tenis

Después debe poderse recuperar por cada fila el ID

Gracias.
    ¡Gracias!
#2

Hola GambaFeliz.

A ver. Esto va con respecto al tema que también buscas para la base de datos.
¿ Estas interesado en saber si la propiedad ItemData que tenía el listBox de Visual Basic existe en Gambas ?

Como tu sabes en el ListBox o el ComboBox solo vemos un texto. No hay más de una columna en una fila.

En el listbox de Visual Basic existía la propiedad List es un array que guarda texto y ItemData era un array interno
que usaba números, indices.

Por ahora no le he encontrado una necesidad de existencia de ItemData en el listBox de Gambas.
Estoy liado con un "viejo" ejemplo de Visual Basic convirtiendolo a Gambas, espero subirlo cuando lo acabe y comentas.
Pero me quiero asegurar de que esa propiedad tenga algo de interés.

[Imagen: truq4H9.png]


Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!
#3

Gracias Shell pero que apañao eres Smile

El control de Microsoft Access hace esto:

Enlaza con dos campos (columnas) de una base de datos relacional. En cada fila, la columna una era el ID de la tabla y era oculto y la segunda columna era el campo visible para el usuario. Esto era muy muy útil para desarrollar combobox relacionales como un Combobox de Categorías y otro de Subcategorías.

Ahora bien,
Mira yo actualmente lo resuelvo en Gambas, así, te cuento:

1. Cargo un combobox con el campo visible y un String[] con las filas y en su interior con las columnas
2. Cuando el usuario selecciona un elemento del combobox solo tengo que obtener la Key de la fila y después relaciono esta Key con la posición en el String[]
3. Una vez echo esto obtengo cuantas columnas necesite conocer de la base de datos y así hago un Combobox en un Combobox relacional.

Espero que te interese mi explicación sino pues, bueno Smile

Oye muchas gracias de verdad por tu buen hacer sabes que te lo agradezco de verdad.
[-] Los siguientes 1 usuarios dice gracias a gambafeliz por este post:
  • Shell
    ¡Gracias!
#4

Me acuerdo del tema de M$ Acess, lo que pasa es que hace ya tanto tiempo.
 
(27-03-2021, 22:53)gambafeliz escribió:  Espero que te interese mi explicación sino pues, bueno

Claro que me interesa y mucho, todo lo que sea aprender para mejorar la programación es de mi interés y el de todos, aunque no siempre
se pueda estar. La vida es complicada.

La explicación es la misma que estoy usando en ese ejemplo. Lo tomo como referencia. Podemos aplicarlo al ejemplo que estoy haciendo.
(27-03-2021, 22:53)gambafeliz escribió:  1. Cargo un combobox con el campo visible y un String[] con las filas y en su interior con las columnas

El campo visible en el ListBox es el ISBN que es la clave. El String[] almacena cada fila (registro de los libros), los campos son las columnas (ISBN, Públicado por..). Hasta ahí ok.

Estamos hablando de un array estático, que se da por sentado cuantos registros puede tener y sus campos.

GAMBAS
  1. Private Const NumRegistros As Integer = 100
  2. Private Matriz_de_Datos As New String[NumRegistros, 4] 'Tenemos 100 registros y 4 campos


 
Cita:2. Cuando el usuario selecciona un elemento del combobox solo tengo que obtener la Key de la fila y después relaciono esta Key con la posición en el String[]

Solo es cuestión de buscar en cada uno de los registros
 
Cita:3. Una vez echo esto obtengo cuantas columnas necesite conocer de la base de datos y así hago un Combobox en un Combobox relacional.

Así es.

No he necesitado la propiedad similar ItemData los ListBox o ComboBox de Visual Basic. Pero me gustaría ver si e realmente necesaria.

Al final lo conseguiste.

Saludos

"El buen perfume en frasco pequeño se vende"
    ¡Gracias!


Posibles temas similares…
Tema / Autor Respuestas Vistas Último mensaje
Último mensaje por vuott
23-09-2020, 16:54

Salto de foro:


Usuarios navegando en este tema: 1 invitado(s)