Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   Algun componente para solo listar el valor de un campo? (https://www.clubdelphi.com/foros/showthread.php?t=10794)

nefy 28-05-2004 21:33:13

Algun componente para solo listar el valor de un campo?
 
Hola alguien de ustedes conoce algun componente que liste el valor de un campo tal como lo hace el dblookupcombobox pero q solo lo liste para seleccionar. Ahorita estoy cargando la lista recorriendo la tabla registro por registro, pero eso representa mas trabajo pues debe ser muchas veces las actualizaciones de la lista y etc.

Ya intente con el lookupcombobox pero no se pude cambiar la seleccion.

P.D.:La lista no asigna el valor a ningun campo solo muestra los valores de los cuales se puede seleccionar y en base al elemento de la lista que se haya seleccionado, realizar otras operaciones.

Salu2.

vic_ia 28-05-2004 21:38:12

... TDBComboBox
 
hola....

... para tus fines, no sera mas facil utilizar un control TDBComboBox,... muestra los registros de una tabla, y bueno, al seleccionar ya lo que haga tu aplicación pues lo designas tu....

saludos....

nefy 28-05-2004 21:51:06

Hola, mira ese componente no sirve pues tendra los elementos q tu le asignes ya sea en el diseño o en tiempo de ejecucion. Ademas este afectara el valor del registro activo, y yo no quiero afectar ningun registro con la lista. Yo solo quiero cargar la lista de una tabla, y segun el elemento q se ha seleccionado realizar otras cosas.

Espero haberme explicado.
Salu2

roman 28-05-2004 21:53:15

¿Pero cuál es el problema?

Si omites las propiedades DataSource y DataField del combo y sólo utilizas ListSource, ListField y KeyField, entoces es precisamente lo que hace, seleccionar un registro.

// Saludos

nefy 28-05-2004 22:00:29

Hola Roman el problema es q con ese son dos:
1.-Al desplegar la lista te muestra seleccionados todos los elemenos de la lista.
2.-Y el mas importante es q no te permite cambiar el elemento seleccionado, es decir el elemento seleccionado por default no cambia aun y cuando despliegues la lista y selecciones otro elemento de la misma.

Nota: Si no me he explicado hagan una pequeña prueba.

Salu2.

roman 28-05-2004 22:25:35

Disculpa Nefy pero realmente no estoy entendiéndote. En la imágen de abajo



tengo un DBLookupComboBox y dos DBEdits que van mostrando lo que se va seleccionando en el combo. ¿No es esto lo que deseas?

// Saludos

roman 28-05-2004 22:30:21

Aclaro que los DBEdit están conectados al mismo DataSource qe el ListSource del combo, esto es, que no estoy alterando ningún valor en otra tabla, sólo recorriendo los campos de la tabla conectada a ListSource.

// Saludos

delphi.com.ar 28-05-2004 22:30:27

Me parece que con "seleccionado" quiere decir otra cosa, puede ser algo como "cargado"??

roman 28-05-2004 22:31:23

Cita:

Empezado por delphi.com.ar
Me parece que con "seleccionado" quiere decir otra cosa

Es posible, por eso mejor puse la imagen para que nos diga si es o no lo que desea.

// Saludos

nefy 28-05-2004 22:42:25

Mira Roman si es eso lo q deseo, pero no se porq pero yo al seleccionar un elemento no se queda seleccionado en el DBLookUpCombobox pero en los DBEdits si se muestra dicho registro q seleccione y no permanecio en el BDLookUpCombobox sino q la lista permanece en el primer elemento.

Puntualizo q solo asigno los valores al ListSource, ListField y KeyField del DbLookUpCombobox.

Salu2.

nicolasdom 21-11-2004 19:36:08

me pasa lo mismo... como hago para que cuando el DBLookupComboBox me despliega la lista al hacerle un click a un item me lo muestre en el DBLookupComboBox? que debo llenar? help me!!!!

Lepe 22-11-2004 12:39:11

Cita:

Empezado por delphi.com.ar
Me parece que con "seleccionado" quiere decir otra cosa, puede ser algo como "cargado"??

Creo que quiere decir Seleccionado :D

Imaginemos una tabla tblRepartos con 2 campos
Código:

Ciudad        Tipode Reparto
Lepe        1 diario
Lepe        1 mensual

Y en una ventana pones un DBlookupcombo, que su Datasource será la Tabla Albaran con el campo Ciudad. el ListSource será la tabla tblRepartos. El KeyField será Ciudad.

Si pones el valor de AlbaranCiudad.AsString en 'Lepe' , al abrir la lista desplegable, los dos items del LookupCombo aparecen en azul (seleccionadas).

Este comportamiento creo que no se puede evitar en estos controles, ojalá me equivoque.

En cuanto al segundo fallo creo que es porque no tiene todas las propiedades bien definidas. Creo conveniente que diga exactamente qué quiere obtener, que ponga la definición de las tablas y campos que intervienen en la operación.

Saludos

Lepe 22-11-2004 12:44:55

Cita:

Empezado por nefy
2.-Y el mas importante es q no te permite cambiar el elemento seleccionado, es decir el elemento seleccionado por default no cambia aun y cuando despliegues la lista y selecciones otro elemento de la misma.

Claro, al no especificar las propiedades DataSource y DataField, no te deja seleccionar uno distinto.

Si no necesitas las propiedades DataSource y DataField, entonces usa un RXLookupEdit, que no tiene esas propiedades. (
componentes RXLib )

Saludos y espero que haya acertado en el quid de la question.

nicolasdom 22-11-2004 12:56:53

Borron y cuenta nueva...
 
Se que esta pregunta no va en este hilo pero como ya se habla del tema aprovecho...

* Tengo una tabla (AUTOS) con id_auto
* Pongo IBTable y un DataSource
* Pongo un DBLookUpComboBox y le pongo el list el jey y el no se que mas apuntando a id_auto.

Ejecuto y cuando hago un click en el LookupCombo me muestra todos los ids de la tabla.

Mi inquietud es la siguiente... como hago para que 1) pueda seleccionar algo de esa lista y me lo deje "marcado" o "escrito" en el LookUpCombo cuando selecciono un id? 2) Ahora quiero empezar a escribir y que me lo vaya completando?

Lo que pido es que funciono como un COMBOBOX pero sin tener que cargarles los items con un while, ya que esto alentece muchisimo mi formulario.

Espero que me entiendad y me salven de la locura que me esta agarrando.

Un abrazo para todos y muchas gracias. :D

Lepe 22-11-2004 13:56:13

Cita:

Empezado por nicolasdom
2) Ahora quiero empezar a escribir y que me lo vaya completando?

usando un DBlookupcombo, olvídate.

En principio, el control te permite hacer lo que dices, pero no se muestra los caracteres que pulsas, es decir, pulsa a ciegas y verás que se selecciona uno u otro.

Un Autocompleta como lo hace Excel, o un ComboBox, por ejemplo, lo tienes que hacer a mano. Aparte estará la eficiencia....

Solución: un TDBcombobox y una Query ordenada por el campo que quieres completar, despues hacer el bucle while para añadir los items.

Saludos

nicolasdom 22-11-2004 14:01:36

Si lo del while ya lo he implementado pero va muy!!! lento cuado la cantidad de items crece. En cambio tengo entenido que cuando se usa un dblookup va trayendo segun necesita. Por lo menos a mi me va mas rapido.

Sigo buscando soluciones... saludos.


La franja horaria es GMT +2. Ahora son las 00:38:20.

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