Exibir dois campos no DBLookupComboBox sem estar em edição
Olá a todos,
Tenho em um sistema um DBLookupComboBox que exibe dois campos (coloquei no listfield o ponto-e-virgula e o nome dos dois campos) na edição/inserção aparece numa boa, mas apos salvar o registro exibe apenas 1ª coluna.
Pergunto: Tem como exibir os dois campos enquanto navego nos registro através de uma navigator?
Ex.:
Como esta:
------------------------------------------
|Prova | V |
------------------------------------------
Como eu preciso:
------------------------------------------
|Prova Bimestral | V |
------------------------------------------
Tenho em um sistema um DBLookupComboBox que exibe dois campos (coloquei no listfield o ponto-e-virgula e o nome dos dois campos) na edição/inserção aparece numa boa, mas apos salvar o registro exibe apenas 1ª coluna.
Pergunto: Tem como exibir os dois campos enquanto navego nos registro através de uma navigator?
Ex.:
Como esta:
------------------------------------------
|Prova | V |
------------------------------------------
Como eu preciso:
------------------------------------------
|Prova Bimestral | V |
------------------------------------------
Chucky21
Curtidas 0
Respostas
Rogick
28/09/2005
Já viu o que vc está botanto no DataField?
GOSTEI 0
Chucky21
28/09/2005
Propriedades do DBLookupComboBox
DataField: COD_TIPO_MATERIAL
DataSource: dsrMaterial
KeyField: COD_TIPO_MATERIAL
ListField: ESPECIE_TIPO_MATERIAL;NOME_TIPO_MATERIAL
ListSource: dsrTipoMaterial
O problema é q os campos no listfield só aparece em tempo de inserção/edição e na hora q abro oform somente para navegação ñ aparece o segundo campo
DataField: COD_TIPO_MATERIAL
DataSource: dsrMaterial
KeyField: COD_TIPO_MATERIAL
ListField: ESPECIE_TIPO_MATERIAL;NOME_TIPO_MATERIAL
ListSource: dsrTipoMaterial
O problema é q os campos no listfield só aparece em tempo de inserção/edição e na hora q abro oform somente para navegação ñ aparece o segundo campo
GOSTEI 0
Fknyght
28/09/2005
Ou, vc pode tentar criar um campo calculado para fazer a vizualização
GOSTEI 0
Rogick
28/09/2005
Tenta fazer o seguinte:
Ao invés de vc colocar no ListField da DBLookupCombobox os dois campos, vc coloca os dois campos no DisplayText de um usando o evento OnGetText de um deles.
Exemplo:
Não é a melhor solução, mas acho q isso serve p/ o propósito
Ao invés de vc colocar no ListField da DBLookupCombobox os dois campos, vc coloca os dois campos no DisplayText de um usando o evento OnGetText de um deles.
Exemplo:
procedure TForm1.qrTipoMaterialESPECIE_TIPO_MATERIALGetText(Sender: TField; var Text: String; DisplayText: Boolean); begin if not Sender.IsNul then Text := Sender.AsString + ´ ´ + qrTipoMaterial.FieldByName(´NOME_TIPO_MATERIAL´).AsString; // Onde o Sender é o campo ESPECIE_TIPO_MATERIAL end; ... // Na DBLookup vc coloca assim DataField: COD_TIPO_MATERIAL DataSource: dsrMaterial KeyField: COD_TIPO_MATERIAL ListField: ESPECIE_TIPO_MATERIAL // Vai aparecer os dois campos ListSource: dsrTipoMaterial
Não é a melhor solução, mas acho q isso serve p/ o propósito
GOSTEI 0
Chucky21
28/09/2005
Rogick caro Delphiniano,
Sua dica resolveu o meu problema, MUITO OBRIGADO!
Grato pela sua atenção!!!!
Sua dica resolveu o meu problema, MUITO OBRIGADO!
Grato pela sua atenção!!!!
GOSTEI 0
Rogick
28/09/2005
Nóis taki pra isso! :wink:
GOSTEI 0