PDA

Ver la Versión Completa : limpiar combobox


m8estrella83
25-06-2013, 01:40:18
Hola !

Tengo un combobox con dos opciones, y un DBgrid que muestra los resultados de un query, y necesito que cuando den doble clic sobre un registro, el combobox muestre el dato que le corresponde del query yo puse el siguiente codigo.



if query1.fieldbyname('lista').asstring <> '' then
begin

if query1.fieldbyname('lista').asstring = 'V' then
begin
combobox2.ItemIndex:=0;
end;

if query1.fieldbyname('lista').asstring = 'VM' then
begin
combobox2.ItemIndex:=1;
end;

end
else
begin
combobox2.Text:='';
end;


Si muestra los datos en el combobox, pero si algún registro tiene el campo "lista" vacío el combobox se limpia y cuando vuelvo a dar clic a otro registro que si tiene el dato este no aparece en el combobox.


no he podido saber cual es el problema.

espero me puedan ayudar se los agradecería mucho.

Casimiro Notevi
25-06-2013, 01:45:18
Recuerda poner los tags al código fuente, ejemplo:

http://www.clubdelphi.com/images/UtilizarTAGs.png

Gracias :)

m8estrella83
25-06-2013, 01:49:03
Ups !!!


Perdon



:)

ecfisa
25-06-2013, 03:22:54
Hola.

Creo que debería ser:

procedure TForm1.DBGrid1DblClick(Sender: TObject);
begin
with DBGrid1.DataSource.DataSet do
if FieldByName('lista').AsString = 'V' then
ComboBox1.ItemIndex := 0
else if FieldByName('lista').AsString ='VM' then
ComboBox1.ItemIndex := 1
else
ComboBox1.ItemIndex := -1;
end;


Saludos. :)