Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   OOP (https://www.clubdelphi.com/foros/forumdisplay.php?f=5)
-   -   valor predeterminado en DBLookupCombobox (https://www.clubdelphi.com/foros/showthread.php?t=22660)

Johnny Q 22-06-2005 17:59:07

valor predeterminado en DBLookupCombobox
 
Un saludo a todos.

Resulta que tengo un dblookupcombobox que me muestra los valores de una tabla, y me funciona bien. Pero no se si exista la posibilidad de que el dblookupcombobox me muestre de forma predeterminada el primer valor de la lista, pues cuando cargo mi formulario el dblookupcombobox no me muestra ningun valor predeterminado.

Agradezco su colaboración.

vic_ia 22-06-2005 21:54:12

Hola...

el dblookupcombobox es un control ligado a datos, por lo que te mostrara el dato al que se encuentre asociado de acuerdo a su propiedad DataSource y DataField, si lo que deseas es que al agregar un nuevo registro se muestre un valor por defecto para este control lo que tienes que hacer es darle el valor por defecto al campo que esta asociado al control, no al control mismo...

saludos...

roman 22-06-2005 23:05:41

Pero si usamos un DBLookupComboBox sin asociarlo con DataSource y DataField sino sólo con ListSource, entonces podemos usar KeyValue para establecer el valor por defecto.

// Saludos

Johnny Q 22-06-2005 23:23:34

Gracias por sus respuestas, lo unico que quiero lograr es que apenas cargue mi formulario el primer valor que muestre el dblookupcombox sea el primero que se ve cuando se hace click en el (el primer valor de la lista).

Roman, tu dices que con la propiedad KeyValue se puede lograr esto, pero la verdad estuve mirando y no se como hacerlo.

Gracias

roman 22-06-2005 23:32:39

La propiedad KeyValue corresponde al campo que hayas asignado en KeyField.
Así, si Table1 es el dataset asociado al combo mediante ListSource entonces:

DBLookupComboBox.KeyValue := Table.FieldByName('id').AsVariant;

suponiendo que 'id' es el campo de KeyField y que Table1 está abierta y en el primer registro.

// Saludos

el_barto 22-06-2005 23:35:53

Roman y si se manejara el datadource del combo y necesitara que despues de hacer click en un registro siempre estuviera seleccionado este registro para que lo inserte a una grid por medio de la propiedad datasoruce como se haria??

roman 22-06-2005 23:42:00

No entiendo la pregunta. Si seleccionas un registro pues queda.. ¡seleccionado!

Quizá te refieres a tu pregunta en http://www.clubdelphi.com/foros/showthread.php?t=22648 en cuyo caso ya te han contestado. De no ser así, explícalo más.

// Saludos

Johnny Q 22-06-2005 23:49:00

Muchisimas gracias roman, este codigo que me diste era justo lo que necesitaba, ya lo probe y funciona a las mil maravillas.

Saludos...

Koder 23-06-2005 01:52:24

Otra solución
 
Hola

Disculpen que meta la cuchareta :) porque ya tienen la solución pero quisiera decir como es que yo resulevo ese problema lo que hago es poner en el OnCreate de mi Form

DBLookupComboBox1.Perform(WM_KEYDOWN, VK_DOWN, 0);

De esta forma logro simular que el usuario hubiera escogido el primer valor (hubiera seleccionado DBLookpComboBox1 y entonces apretara la tecla de cursor "abajo") y no tengo que preocuparme por KeyValue.

Es solamente otra forma ;)

Saludos, Koder

Johnny Q 23-06-2005 17:54:27

Gracias Koder, tu comentario es bienvenido.

Saludos...


La franja horaria es GMT +2. Ahora son las 13:53:13.

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