Libreoffice Base: a caixa de combinação continua substituindo o valor por 0

0

Eu tenho uma caixa de combinação que carrega uma lista de países, toda vez que eu seleciono um item e, em seguida, foco em outro objeto do formulário ele redefine para 0. Essa caixa de combinação é vinculada a um valor inteiro na tabela principal (ele armazena o índice , não a cadeia do país).

O que diabos eu estou fazendo errado?

    
por Gabriel A. Zorrilla 15.08.2012 / 06:38

1 resposta

2

Se eu entendi corretamente, você quer uma caixa de combinação que exibe uma lista de nomes de países e armazena algum tipo de código do país. Você pode usar um ComboBox para exibir e armazenar um um campo, mas não para exibir um campo e armazenar outro. Diferentemente do controle ListBox, o ComboBox não tem uma propriedade Bound Field , que é necessária para usar dois campos. A propriedade Bound Field determina qual campo é armazenado em sua tabela de destino.

VocêprecisausarumcontroleListBoxparaobteressafuncionalidade.OcontroleListBoxdevefornecerumassistente.Primeiroselecioneatabeladaqualvocêdesejaexibirosdados.

Em seguida, selecione o campo que você deseja exibir.

Porfim,selecioneocampoparaoqualdesejaarmazenarovalor(listadoladoesquerdo)eocampodoqualdesejaobterovalor(listadoladodireito).Observação:nesteexemplo,estouusandoapenasumatabela.Então,eutenhoasmesmasopçõesnaslistasdoladoesquerdoedoladodireito.Normalmente,vocêextrairiaessesdadosdeoutratabelaparaseremexibidosearmazenadosnoatual-geralmentecomoalgumtipoderelaçãodechaveestrangeira.

Em seguida, precisamos fazer o ListBox agir como um ComboBox, ou seja, fazer o ListBox ter um menu suspenso. Clique com o botão direito do mouse no ListBox e vá para Control . Defina a propriedade DropDown como Yes . Defina o LineCount para quantos itens você quiser exibir sem precisar rolar (eu gosto de 5, pessoalmente). Por último, defina o Height para algo mais parecido com o que um campo de texto seria.

Referência: link

    
por 05.09.2012 / 22:07